Background Image

FORUM

조회 수 22732 추천 수 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
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 119
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4475
3880 ADO.NET에서 자바 저장함수 호출 2 kdknim21 2014.11.01 8420
3879 ADO.Net 사용중입니다. 상태확인 방법을 알고 싶습니다. 1 CUCUCUCU 2015.10.22 5691
3878 ADO.net Driver 변경 시 cascci.dll 로드할 수 없다는 오류 1 물병 2017.07.25 503
3877 ADO.net 또는 ODBC에 대한 질문입니다. 12 세스카 2012.03.20 13378
3876 ADO이용시 OLEDB Driver에러 2 flypig 2010.01.29 15619
3875 AIX에 CUBRID 설치 후 오류사항 문의 1 최명호 2015.06.02 7736
3874 ALTER 로 PK 여러 개 지정하고싶습니다 4 사탕구름 2021.07.21 835
3873 ARRAY 데이터 타입에 대한 SQL 질문 3 지용 2010.10.08 10246
3872 AUTO INCREASE 가 편집이 안됨 2 file 큐브리드어려워요 2022.02.08 268
3871 AUTO_INCREMENT 수동 증가 문의 2 cubrid초보 2021.08.19 728
3870 AUTO_INCREMENT 컬럼 이용시 2 hyperhand 2009.12.22 17649
3869 AVG 함수관련 질문드려요 1 구름마음 2013.06.10 13678
3868 Ado.NET : Cannot connect to CUBRID CAS 오류 2 websiter 2017.05.05 57903
3867 Ado.net. ExecuteNonQuery의 반환값이 항상 0 입니다. 2 모비23 2019.01.08 1486
3866 An IOException was caught during reading the inputstream 1 익명2 2015.11.26 6872
3865 An IOException was caught during reading the inputstream 1 익명2 2015.11.26 6834
3864 An IOException was caught during reading the inputstream. 오류 조치방법 좀 알려주세요. 1 ldev27 2019.10.29 316
3863 An internal error occurred during: "Fetching children of <DB명>". java.lang.NullPointerException 에러 4 ysh 2021.04.06 484
3862 Apm_setup7로 자동설치시 연동이 안되는데... 1 또랑 2010.11.08 8277
3861 Archive Log만으로 타임복구가 가능한가요? 4 핑핑크 2016.04.29 9821
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 200 Next
/ 200

Contact Cubrid

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