2012-06-14 5 views
0

AppEngine 애플리케이션에서 서블릿을 초기화하는 데 시간이 오래 걸립니다. 초기화는 단 한 번 발생하기 때문에 일반적인 Tomcat 배포에서는 큰 문제는 아닙니다. 그러나 AppEngine에서는 많은 서비스 요청으로 인해 AppEngine이 새 프로세스를 시작하고 초기화 작업을 수행하므로 이러한 sevrice 요청에 많은 시간이 걸리는 것으로 나타났습니다.AppEngine 서블릿의 길이가 긴 초기화

서비스 요청에서 초기화를 분리 할 수 ​​있습니까? 어떻게 든 AppEngine에 백그라운드에서 초기화 작업을 지시하므로 사용자가 페이지를 요청하면 오랫동안 기다릴 필요가 없습니다.

+0

참고로 다음과 같은 몇 가지 요청마다 로그에 메시지가 표시됩니다. "이 요청으로 인해 새 프로세스가 시작되어 응용 프로그램 코드가 처음으로로드되었습니다. 따라서 응용 프로그램에 대한 일반적인 요청보다 더 오랜 시간이 걸리고 더 많은 CPU를 사용합니다. " –

+1

이것은 당신의 질문에 대답해야합니다 http://stackoverflow.com/questions/9577457/gae-go-this-request-caused-a-new-process-to-be-started-for-your-application –

+0

@ vishal.biyani는 그의 질문에 대답하는 것과는 거리가 멀다. 그것은 다른 플랫폼입니다. –

답변

2

앱의 App Engine 콘솔의 응용 프로그램 설정 섹션에서 응용 프로그램 설정을 유휴 인스턴스 또는 Warmup Requests로 설정할 수 있습니다. 앱이 미리로드되고 이동 준비가되면 느린 초기화 시간을 피해야합니다.

+1

감사합니다. 나는이 옵션들에 대해 몰랐다. 내 앱이 무료이기 때문에 유휴 인스턴스에 대한 최소값 설정은 사용할 수 없지만 무료 앱인 경우에도 예열 요청을 사용할 수 있습니다 (https://developers.google.com/appengine/docs/java/config/appconfig#Warmup_Requests). –

관련 문제