Background Image

FORUM

조회 수 22714 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

c# 에서 개발 중인데 로컬 환경에서 서버로 구축했을때는

빠른 응답을 하는 반면에

따로 서버로 구성하여 접속시 selct 쿼리만 날리는데도

속도가 좀 느리네요

데이터도 대용량도 아니구요

쿼리 처리 속도 올려주는 튜닝법이 있나요

 

c#  코드는 아래와 같습니다.

_connection.Open();
            OleDbCommand command = new OleDbCommand();
            OleDbTransaction transaction;
            transaction = _connection.BeginTransaction();
            command.Transaction = transaction;
            command.CommandType = CommandType.Text;
            command.Connection = _connection;

 

command.CommandText = "Select * From A_Table";
                OleDbDataReader myRead=command.ExecuteReader();
                while (myRead.Read())
                {

                   var strArray = new String[] {컬럼들}
                    var lvt = new ListViewItem(strArray);

                 }
                myRead.Close();
                transaction.Commit();

 

간단히 데이터를 받아와 컨트룰에 입력시키는 코드인데

데이터를 받아오는게 늦어서 그런지

컨트룰 로딩도 덩달아 늦어지네요.

 

인줄 알았으나

 

몇번 테스트 결과 _connection.Open();
에서 지연이 발생하네요

원인을 모르겠습니다. 왜 컨넥션에서

지연이 발생하는지요 

 

 

 

  • ?
    이용미 2012.12.22 00:45

    안녕하세요. 질문 감사드립니다.

    수행 환경에 따라 SQL 수행 시간이 달라진다고 하셨는데요, 이 경우 쿼리가 실제로 수행되는 시간을 확인해 보셔야 할 것 같습니다.

    만약, 로컬 환경에서 서버로 구축하셨을 때의 sql 수행 시간과 서버를 따로 구성하여 수행하였을 때의 sql 수행시간의 차이가 나지않는다면

    CUBRID 자체의 쿼리 수행 속도가 아닌 프로그램 혹은 네트워크의 문제의 가능성이 있습니다.

     

    Sql log $CUBRID/conf/cubrid_broker.conf에서 SQL_LOG 파라미터의 값이 ON이라고 설정되어있는 경우 남겨집니다.

    파일 이름은 $CUBRID/log/broker/sql_log 디렉토리에 broker_CAS번호.sql.log로 남겨지며, execute을 주로 보시되 추가로 elapsed time을 확인해 보시면 됩니다.

    로그 분석 방법은 매뉴얼(http://www.cubrid.com/online_manual/843/admin/admin_service_broker_log.htm, SQL 로그 관리)과 튜토리얼 문서(http://www.cubrid.com/zbxe/50204, SQL LOG 분석하기)를 참고하세요.

  • ?
    yak341 2012.12.22 01:49

    답변감사드립니다.

    요청 하신 바와같이 같은 환경에서 테스트를 해보았습니다.

    로그를 확인 해본결과 시간차이 발생이 되는 군요

    ----로컬PC접속----

    12/21 16:35:55.875 (0) *** elapsed time 0.000 

    12/21 16:35:55.890 (0) *** elapsed time 0.015

    -------서버PC----------------------

    12/21 16:38:21.456 (0) *** elapsed time 0.202

    12/21 16:38:22.078 (0) *** elapsed time 0.418

    로그 결과를 확인해보니 차이가 좀 많이 나는것 같습니다.

    브로커 설정으로 해결 할 수 있을까요?

  • ?
    이용미 2012.12.24 23:01

    안녕하세요.

    위에 올려주신 elapsed time 만으로는 쿼리 execute time이 오래 걸렸는지, prepare 등의 다른 수행 시간이 오래 걸렸는지 알 수 없습니다.

    Elapsed time 이 아닌, 실제 쿼리 수행 시간인 execute time을 살펴 보셔야 할 것 같습니다.

    만약, execute time이 변화가 없다면, prepare 혹은 commit 등 어떤 부분에서 수행 시간이 추가적으로 소요되었는지 확인해 보셔야 할 것 같습니다.

     

    혹시 가능하시면 $CUBRID/log/broker/sql_log 디렉토리의 sql_log 파일들을 압축하여 비공개로 올려주시면, 로그 파일들을 확인해 보도록 하겠습니다.

  • ?
    yak341 2012.12.24 23:35 SECRET

    "비밀글입니다."

  • ?
    이용미 2012.12.25 02:19

    첨부파일 확인하였습니다.

    Elasped time이 오래 걸리는 경우, isolation 설정시와 prepare 시에 시간이 오래 소요된 것을 알 수 있었습니다.

    이는 DB와 응용간의 통신을 할 때 시간이 많이 소요됨을 의미합니다.

    이에 따라, DB와 응용이 설치된 서버간의 네트워크가 불안한 것으로 판단되므로, 응용과 DB 서버상의 방화벽, 게이트웨이 등에 문제가 없는지 확인 부탁 드립니다.

     

    참고로, 쿼리 수행시간은 보통 0.000, 0.001초로 정상적인 것으로 판단됩니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4444
1047 MSSQL같이 레코드 복사는 안 되나요? 1 하늘나무 2014.03.28 10491
1046 mysql로 마이그레이션하는방법좀.. 1 썬해바라기 2009.12.14 10493
1045 systimestamp 함수로 현재시간을 불러올 경우 에러가 발생합니다. 1 노랑배 2011.01.28 10495
1044 마이그레이션 툴문의 3 webdoors 2010.03.23 10497
1043 cubrid 2008 R 2.1에서 2.2 버전으로 업그레이드 문의 2 file 종이 2010.06.04 10498
1042 database 시동이 안되요 1 2 나상숙 2009.04.04 10498
1041 broker error 8 쪼로롱 2014.02.26 10501
1040 질의 편집기로 부질의 유도테이블 쿼리실행에 대해 2 Chans 2009.09.17 10503
1039 9.1 가져오기 / 내보내기 2 bellstar 2014.05.13 10506
1038 IF문 관련 질문입니다. 1 뿌잉 2014.02.18 10516
1037 데이타 올리기로 데이타 삽입후 db_serial 변경 문의 1 초보 2010.04.08 10521
1036 [해결됨] 3.0 -> 3.1 이전중에 문제가 발생해서 현재 업무 마비상태 입니다. 11 file reerror 2011.03.25 10530
1035 컬럼 데이터타입 수정 문의 2 지렸당께 2011.12.05 10537
1034 기본값 설정 문의 3 칸의후계자 2009.09.16 10537
1033 날짜사이 데이터 1 ES 2010.11.12 10543
1032 테이블 복구 1 mydream 2010.02.26 10544
1031 LEFT 함수 문의 1 유니콘 2010.08.12 10547
1030 다름이아니라 PHP 모듈관련 1 ghkdldjfld 2010.04.03 10556
1029 트랜잭션의 상세정보를 확인할수 있는 방법이 있나요? 1 김현성 2011.06.01 10559
1028 커넥션 유지 관련 2 구름마음 2013.07.05 10564
Board Pagination Prev 1 ... 143 144 145 146 147 148 149 150 151 152 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales