2013-03-31 4 views
22

때때로 Windows Azure 웹 사이트에 액세스 할 때 초기 응답 시간이 매우 느립니다. 첫 페이지로드 후 웹 사이트가 빠릅니다. 배경 : 웹 사이트는 현재 자주 방문하는 사이트가 아닙니다. 또한 keepalivecontroller를 사용하여 웹 사이트를 계속 실행하고 웹 사이트가 공유 모드로 실행됩니다. 궁금하네요 : 창문이 푸른 하늘에있는 메모리에서 제거되지 않은 웹 사이트입니까? 아니면 푸른 하늘 창문의 작동 수준에 대한 배경 작업이 가끔 방해가되는 것입니까? 그것은 무슨 일이 일어나고있는가에 대한 투명하지 않습니다, 그래서 창문이 푸른 웹 사이트를위한 무언가의 일부 sla입니까?windows azure 웹 사이트로드 시간

답변

2

Windows Azure 웹 사이트는 여전히 미리보기 상태이므로 현재 해당 서비스에 대한 SLA가 없습니다.

무료 또는 공유 모드에서 웹 사이트가 유휴 상태로 표시되는 경우가 있습니다. 사이트가 유휴 상태가되면 메모리에서 실제로 제거되고 실제로 사이트를 실행하는 IIS 프로세스 호스트가 종료됩니다. 이것이 동일한 VM에서 100 개의 사이트를 호스팅하는 밀도를 얻을 수있는 방법입니다.

Channel9 사이트에서 이유가 무엇인지, 또는 뻔뻔한 플러그처럼 여기에 how the process is handled에 대한 기사가 있습니다.

이제 keepalivecontroller를 사용하고 있다고 언급했는데 정확히 무엇을 의미합니까? 나는 pingdom.com을 사용하여 내 웹 사이트 중 하나에 대한 데이터를 요청하고 있으며 이는 꽤 잘하는 것으로 보입니다. 요청이 들어오지 않고 유휴 시간이 만료되어 사이트를 순환시킬 가능성은 여전히 ​​있습니다. 또한 항상 사이트 사이트에서 실행중인 사이트의 VM이 기본 OS를 업데이트해야하는 경우에도 Azure가 사이트 프로세스를 다른 VM으로 이동시켜 느린 시작을 유발할 수도 있습니다 다음 요청시.

응용 프로그램을 시작할 때 로깅을 시작한 다음 로그를보고 얼마나 자주 발생하는지 확인하십시오.

+0

나는 별도의 스레드에서 실행되는 작업이 있으며 WebClient 클래스의 도움으로 홈페이지를 요청합니다. 종종 실제로 잘 작동하는 것 같아서 OS 유지 관리 문제 일 수도 있습니다. 웹 사이트가 실행중인 컴퓨터에서 어떤 일이 일어나고 있는지 분명하지 않다는 것을 알게되었습니다. 그러나 나는 당신이 항상 공유하는 기계를 가지고 있다고 가정합니다. 나는 실제로 로그를 검사 할 것이다. 그런데 멋진 기사! – staccata

+0

사이트의 CPU 작업이 사이트를 계속 유지한다고 생각하지 않지만 그 사이트에 대한 요청이 더 많아서 사이트 외부에서 사이트가 요청되기 때문에 pingdom.com과 같은 작업이 필요한 이유입니다. . 다른 사람들은 Windows Azure 모바일 서비스 스케줄러를 사용하여 작업을 수행했습니다. – MikeWo

13

웹 사이트를 따뜻하게 유지하는 가장 쉬운 방법은 Windows Azure 모바일 서비스의 스케줄러 기능을 사용하여 웹 사이트를 정기적으로 호출하는 것입니다.

매 x 분마다 웹 사이트를 ping하는 스케줄러에 스크립트를 작성하기 만하면됩니다. http://fabriccontroller.net/blog/posts/job-scheduling-in-windows-azure/

17

이제 귀하의 웹 사이트 따뜻하게 유지한다 '예약'모드에서 윈도우 Azure 웹 사이트에 사용할 수있는 새로운 기능이 있습니다 :

여기 그렇게하는 방법을 포함하는 게시물입니다. 이제 Azure 웹 사이트의 "구성"탭에서 "항상 켜기"을 켤 수 있습니다. this 블로그 게시물에서 설명하고있는 바와 같이 :

때 새로운 "항상 켜기"기능은 사이트에서 사용할 수있다 "윈도우 푸른 자동으로 웹 사이트가 항상 작동하고있는 수 있도록 정기적으로 웹 사이트를 ping합니다 따뜻한/달리기 상태 "라고 Guthrie 이 씁니다.

+0

왜 이것이 이제까지 꺼져 있었습니까? – epalm

+1

공유 모드가 아닌 기본 모드 나 표준 모드에서만 작동하는 것 같습니다 (OP는 웹 사이트를 공유 모드로 실행합니다) (http://azure.microsoft.com/en-us/documentation/articles/web-sites-configure /) – romanoza

+9

어쨌든 잘 작동하지 않습니다. 나는 항상 푸른 웹 사이트에서이 기능을 사용하도록 설정했으며, 아무도 최근에 액세스하지 않은 경우 앱을 시작하는 데 보통 30 초 정도 걸립니다. – eoleary

1

당신은 단지 그것을 따뜻하게해야하는 경우 "이 사이트가 항상 반응이다 (앱 도메인 또는 작업자 프로세스 인해 외부 HTTP 요청의 부족으로 페이지 아웃되지 않았 음). 확인하는 데 유용합니다" 한 번 (대 따뜻하게 대) 그리고 대부분 고객의 페이지 감기 시작을 막으려 고 노력하고 있습니다. 올바른 도구는 IIS Application Initialization입니다. 앱 실행 준비가 완료 될 때까지 조회 할 URL 목록을 구성 할 수 있습니다.

내 사이트 페이지 감기 시작을 앓고 그 심각 (심지어 S3에) 푸른 웹 사이트에 확대되어 있지만 캐싱의 여러 계층에의 봉사가 처음 덕분에 (Umbraco의 우리의 비효율적 인 사용 후 반드시 빠른입니다 동적 노드 쿼리 언어는 많은 기회를 제공합니다.

내가 읽은 것과 내 자신의 web.config 시도에서 Azure 웹 사이트에서는이 기능을 사용할 수 없습니다. 나는 여기에 마이크로 소프트에게 물었다 : MS IDEA: Application Initialization to warm up specific pages when app pool starts. 투표를 고려하십시오.

1

"구성"으로 이동해야하는 각 서비스/사이트에 대해 "항상 켜기"를 켜기로 전환하십시오. 또한 저장을 클릭하십시오. 변경 사항을 알기 전에 약 2 분 동안 내 웹 사이트를 방문했습니다.

왜 Hostgator에서 내 설정이 Azure보다 훨씬 빠르기 때문에 기본값이 마음에 들지 않습니다. 나는 아무도 당신의 사이트에 접근하고 있지 않다고 생각하고있다. 긴로드 시간이 있다면 괜찮다.

관련 문제