0

AWS EC2 VM에서 JSON POST 데이터를 허용하는 SQL Server 2008 데이터베이스와 C# (Webforms)로 작성된 API가 있습니다. 내 문제는이 API의 "첫 번째"사용이 다소 느리게 반응한다는 것입니다.느린 초기 API 연결

"처음"이라는 말은 내가 한 시간 정도 기다렸다가 몇 가지 데이터를 게시하면 처음 일 것입니다. 후속 게시물은 비교적 빨리 처리 될 것이므로 느린 "첫 번째"트랜잭션을 다시 경험하기 전에 한 시간 정도 더 기다려야합니다.

초기 게시물 만 느리기 때문에 일정 시간 유휴 상태에서 뭔가 빠져 나갔다가 다시 사용하면 추가 시간이 늘어납니다.

상황은 내가 시도 -

  • 프로그램 실행 성능 프로파일 러를 통해 -이 정말 도움이되지 않았다. 내가 볼 수있는 한, 프로그램 자체에는 매우 느리거나 비효율적으로 실행되는 명백한 부분이 없습니다.
  • 항상 최소한 하나의 데이터베이스 연결을 유지하도록 구성을 변경하십시오. 다시 말하지만, 진정한 변화는 없습니다. 나는 "Min Pool Size = 1, Max Pool Size = 100"을 연결 문자열에 추가하여이 작업을 수행했습니다.
  • TCP 대신 명명 된 파이프를 사용하도록 구성을 변경하십시오. 다시 한번, 진짜 변화가 없습니다. 나는 "np :"를 연결 문자열에 지정된 서버 앞에 추가하여이 작업을 수행했습니다. server = np : MyServer; database = MyDatabase;

문제를 진단하기 위해 내가 할 수있는 다른 조치가 있습니까? 이 시나리오에서 내가 무엇을 찾고 있어야합니까?

답변

1

지정된 기간 동안 사용하지 않으면 응용 프로그램 풀이 종료 될 가능성이 있습니다. 종료 후 첫 번째 호출은 지연을 설명하는 메모리로 다시로드되도록 모든 것을 강제 실행합니다.

http://technet.microsoft.com/en-us/library/cc771956%28v=ws.10%29.aspx을 사용하여 원하는 효과를 얻었는지 확인하거나 시뮬레이트 된 게시물을 수행하여 최소 10 분마다 최소 1 회 전화를하는 작업 스케줄러 작업을 설정할 수 있습니다. 간단한 powershell 스크립트가 그것을 처리 할 수 ​​있으며 다음 사용을 위해 모든 준비가 완료됩니다.