2012-09-12 1 views
1

.net 용 MySQL Connector를 사용하여 연결을 열 때 MySQL로부터 매우 긴 응답 시간 문제를 해결하려고합니다..net 용 MySQL Connector를 사용하여 MySQL 연결을 시작하는 속도가 매우 느림

--skip-name-resolve를 사용하여 Azure VM (Server 2008)에서 실행중인 MySQL 5.5를 설치했으며 데이터베이스 사용자 계정의 호스트 제한이 IP 주소를 사용하고 있습니다. Azure에서 실행되는 WCF 서비스에서 .net 용 최신 MySQL 커넥터를 사용하고 있습니다 (동일한 위치 인 미국 - 동부에서 시험 버전 구독을 사용 중이며 선호도가 설정되지 않았습니다). WCF 서비스의 내 연결 문자열은 서버 매개 변수 값으로 MySQL을 호스팅하는 VM의 내부 IP 주소를 사용합니다. 또한 "풀링 = true, 최소 풀 크기 = 2;" 그냥 (이러한 매개 변수없이 시도한 경우).

서비스가 실행 중이고 처리 요청이 꽤 좋으면 (각 쿼리 결과가 고유하고 캐시되지 않는 경우에도) 쿼리 응답 시간을 추적하면 MySQL의 성능에 문제가 없습니다. 자주 타격.

하지만 큰 문제는 내가 깰 수 없었습니다 약 3 또는 4 분간 데이터베이스에 대한 호출이 이루어지지 않은 후 MySQL 열기에 연결하는 데 걸리는 시간이입니다. 데이터베이스 호출이 몇 분 동안 수행되지 않으면 연결을 다시 열려면 8 또는 9 초 이상 걸립니다.. 나는 실제 "conn.open();을 래핑했습니다. 호출 전후에 trace 문을 사용하면 몇 분 동안 사용하지 않으면 로그 된 시간과 시간을 다시 볼 수 있습니다.

덧붙여 말하자면, MySQL Connector가 연결 풀을 관리하고 있는지 확인하기 위해 '사용'스타일의 연결 처리를 시도했습니다.

예 : 사용 (var에 CONN = 새로운 MySqlConnection (Properties.Settings.Default.someConnectionString)) {... 문 ...} 나는이 일에 막 다른 골목에 도달했습니다 같은 느낌

그래서 어떤 제안은 크게 감사 할 것입니다.

+0

저는 엔터프라이즈 라이브러리 커뮤니티를 사용하여 MySQL Connector /를 관리합니다.Net 빠른 시간을 얻었습니다 –

+0

Alberto 님 안녕하세요. 테스트가 더 많이 수행되었지만 응용 프로그램이 Azure에서 실행 중이고 MySQL (Azure의 VM 또는 원격 서버)에 연결되어있을 때만 속도가 느려집니다. Azure에서 SQL Server에 연결하는 것은 빠릅니다. 엔터프라이즈 라이브러리를 확인하기 전에 확인해보십시오. Azure에서 실행하고 있습니까? Azure 또는 MySQL Connector가 연결 풀을 삭제하는 것으로 보입니다. – AnthonyC

답변

2

질문에 대한 설명은 "약 3 ~ 4 분 동안 데이터베이스에 대한 호출을하지 않고 MySQL Open에 연결하는 데 걸리는 시간입니다. 몇 분 동안 데이터베이스 호출을하지 않으면 연결을 다시 열려면 8 ~ 9 초 이상 걸립니다. " 이유 :

Windows Azure 웹 사이트는 웹 사이트에 활성 연결이없는 경우 웹 사이트가 가동되지 않는 경우 콜드 상태는 호스트 IIS 프로세스가 종료됨을 의미하는 핫 (활성) 사이트 및 콜드 (비활성) 사이트 개념을 사용합니다. 해당 웹 사이트에 새로운 연결이 설정되면 사이트를 준비하고 작동시키는 데 몇 초가 걸립니다. 이 웹 사이트와 관련된 MySQL 백엔드가있는 동안 IIS 호스트 프로세스가 시작될 때까지 약간의 시간이 걸리므로 요청 된 URL을 얻는 데 몇 초가 더 걸립니다. 그로 인해 응답 시간이 오래 걸리는 활동이 몇 분 밖에 걸리지 않은 이유입니다.

당신은 윈도우 Azure 핫 (활성) 및 콜드에 대한 자세한 내용은 (비활성) 웹 사이트에 대해 다음과 프리젠 테이션 볼 수 있습니다 :이 시간으로 http://video.ch9.ms/teched/2012/na/AZR305.pptx

을 잘 모르겠습니다하고 유지할 수 있습니다 방법을 모른다 공유 웹 사이트로 이동하거나 전혀 불가능할지라도 웹 사이트는 항상 뜨겁습니다. 문제를 Windows Azure WebSites Forum에게 보내 주시고 해당 팀원이 귀하에게 적절한 답변을 드릴 것입니다.

+0

미스터리를 확인해 주셔서 감사합니다 AvkashChauhan! :) 나는 Azure 포럼을 위해 VM에이 질문을 게시했습니다. 필자는 SQL Server 애호가이며 클라이언트 웹 사이트와의 호환성을 위해서만 MySQL을 사용하고 있습니다. 이제 우리를 SQL Server로 전환 할 수있는 사례를 만들 수 있기를 바랍니다. – AnthonyC

+0

@AnthonyC 당신이 이것에 대한 해결책을 찾을 수 있었는지, 나는 매우 비슷한 문제에 직면하고있다. http://stackoverflow.com/questions/24706027/mysql-data-mysqlclient-mysqlconnection-open-taking-a-long-time – PUG

관련 문제