2011-03-05 10 views
2

Python Google App Engine 환경에서, 나는 결국 저장되어야하는 매우 휘발성이 높은 데이터를 가지고 있습니다. 나는 그것을 인스턴스의 전역 변수에 저장 하겠지만, 인스턴스를 종료하고 있다는 것을 알리기 위해 일종의주의가 필요하다.GAE 인스턴스가 종료 될 때 알림이 표시됩니까?

후크를 설치하는 콜백 또는 장소가 있습니까?

는 (memcache에 대안이지만, 내가 인스턴스 간의 일관성의 오버 헤드를 필요로하지 않으며, 또한 경고없이 사라지는 문제 공유) 전역 변수를 사용에 대한 자세한 내용은 (

을 하나에 대한 Cachepy에서 읽을 수 Google 요리 책)

답변

2

gae-sessions의 작동 방식을 살펴볼 수 있습니다. wsgi 응용 프로그램에 세션 미들웨어를 추가하여 각 요청이 끝날 때마다 데이터가 지속되도록합니다.

각 인스턴스가 시작할 때 고유 한 ID를 제공 할 수 있으며 각 요청이 끝날 때 해당 고유 ID를 키 이름으로 사용하여 항상 휘발성 데이터를 엔티티에 쓸 수 있습니다. 결국 더 많은 글을 쓰게 될 것이지만, 추락하거나 종료 된 인스턴스로 데이터를 잃지는 않을 것입니다. 인스턴스의 수명 동안 지속되기 때문에 데이터를 인스턴스로 읽을 필요가 없습니다 (제 생각에는).

+0

이것은 실제로 사용자와 관련된 세션과는 관계가 없습니다. 당신이 제안하는 것은 단지 데이터 저장소에 데이터를 저장하는 것과 같습니다. –

+0

요청 끝에 데이터를 쓰는 코드 예제로 gae-session을 참조하고있었습니다. 인스턴스가 종료 될 때 알림이 없기 때문에 최상의 솔루션은 요청이 끝날 때마다 인스턴스 데이터를 항상 작성하는 것입니다. – Calvin

1

GAE는이를위한 종료 처리기를 제공합니다. 이 섹션을 살펴보십시오 here (이 경우 이동)

관련 문제