Background Image

FORUM

조회 수 22724 추천 수 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 52
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3855 Archive log 관리 질문 2 june2 2013.07.16 9334
3854 Attempt to access a closed Statement 1 현수 2020.07.09 277
3853 Attempt to call a method related to scrollability of non-scrollable ResultSet. 오류 문의 1 cuins 2011.07.28 12568
3852 Audit 테이블 따로 존재하나요? 3 JIRAN 2019.07.01 242
3851 Auto Increment에 대한 질문입니다. 3 너랑이마녀 2016.02.18 8070
3850 A트랜잭션에서 Update중인 row 를 B트랜잭션에서 Select 1 큐불리드 2015.12.25 6114
3849 BIT형 데이터에 대한 where ... IN 쿼리 1 소라게 2010.03.10 10764
3848 BLOB 데이터 select 질문 1 hyperhand 2009.12.23 12311
3847 BLOB 타입 이미지를 JSP로 웹에 뿌려주려면 어떻게 해야하나요? 1 아워나 2014.07.07 15379
3846 BLOB에 대한 자바 타입변환 문제.. 1 file ㅇㅇ 2013.01.28 10099
3845 BYTE 단위로 SUBSTRING 하는게 가능한가요? 1 mon 2020.07.01 846
3844 BeginTrans 상태에서 검색 시 응답없음 발생 7 까망이 2011.04.22 14738
3843 Broker log 에 start 만 찍히는건 어떤 현상인가요 3 노스 2010.08.24 9103
3842 Broker 에러가 자주 납니다. 1 아르게네스 2010.11.17 7321
3841 C# ADO.NET 이용했을떄 문제 1 보람이 2017.04.14 8221
3840 C# WPF Dataset 연결시 외래키 자동 연결 안됨. 1 moon 2014.07.11 9911
3839 C# ole db 연동 오류 어떻게 해야 할지 조언 부탁 드립니다. 4 배나와사마 2013.02.28 15330
3838 C#에서 ODBC연결시 에러 1 용이 2009.11.15 31853
3837 C#에서 한글컬럼명이 깨지는 증상 4 미르 2013.11.05 19725
3836 C++ Embedded SQL에서 호스트 변수로 클래스 데이터 선언 가능 여부 문의 1 리겔 2012.04.20 9983
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 200 Next
/ 200

Contact Cubrid

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