2010-05-13 8 views
3

5 분마다 웹 페이지를 요청하고 특정 데이터를 구문 분석하는 매우 간단한 응용 프로그램을 appengine에서 실행하고 있습니다.Google은 외부 요청을 appengine합니까?

외부 요청 (urllib2 사용)에서 얻은 응답이 페이지의 최신 변경 사항을 반영하지 않는다는 점을 제외하면 모든 것이 잘 작동합니다. 때로는 최신 정보를 얻는 데 몇 분이 걸리는 경우가 있습니다.

appengine이 배치하는 투명 한 캐싱 계층이 있습니까? 아니면 내가 여기에 실종 된 다른 것이 있습니까? 요청한 페이지의 캐싱 헤더를 살펴 봤는데 Expires, LastModified 또는 ETags 헤더가 전송되지 않았습니다.

업데이트 : 때때로, 그것은 요청의 수를 페이지의 새 버전을 얻을 것이다 무작위 나중에 버전에서 오래된를 얻을.

답변

8

이것은 App Engine team is aware of의 문제인 것으로 보입니다. 권장되는 해결 방법은 초 단위 최대 시간 캐시 제어 헤더를 설정하는 것입니다.

result = urlfetch.fetch(url, headers = {'Cache-Control' : 'max-age=240'}) 

잘하면 당신을 위해 노력해야합니다.

관련 문제