Google App Engine의 서비스 URL Fetch이 프록시 캐시를 사용하는 경우 궁금합니다. in other thread? 내 질문은 : 내 응용 프로그램 (일부 처리기) GAE에 내 응용 프로그램에서 URL 가져 오기를 사용하여 요청을 보낼 경우 결과가이 프록시에서 캐시됩니다?URL 가져 오기는 GAE의 프록시 캐시를 사용합니까?
감사합니다.
Google App Engine의 서비스 URL Fetch이 프록시 캐시를 사용하는 경우 궁금합니다. in other thread? 내 질문은 : 내 응용 프로그램 (일부 처리기) GAE에 내 응용 프로그램에서 URL 가져 오기를 사용하여 요청을 보낼 경우 결과가이 프록시에서 캐시됩니다?URL 가져 오기는 GAE의 프록시 캐시를 사용합니까?
감사합니다.
이만큼 당신이 Cache-Control
헤더를 설정하고이 요청하지 않는 한 작동 GO
파이썬을 같은 ur l (즉, foo의 url foo).
그러나 memcache를 사용하여 원하는 웹 페이지의 응답을 캐시하는 것이 좋습니다. urlfetch를 호출하는 것보다 훨씬 빠르며 더 나은 제어와 보장을 제공합니다.
appropriateCache-control
header on URLFetch 설정 :
result = urlfetch.fetch(url, headers = {'Cache-Control' : 'max-age=0, must-revalidate'})
는
client := urlfetch.Client(c)
req, err := http.NewRequest("GET", check.Url, nil)
req.Header.Add("Cache-Control", `max-age=0, must-revalidate`)
resp, err := client.Do(req)
난 그냥 응용 프로그램의 디자인 여기에 추측하지만, 당신은 쉽게 인스턴스 생성 및 비즈니스 로직 수업을 직접 사용하여 얻을 수있는 뭔가를 검색 UrlFetch API를 사용해야할까요?
는 또한 Urlfetch documentation에서이주의 :
요청의 끝없는 순환을 일으키는 응용 프로그램을 방지하기 위해, 요청 처리기는 자신의 URL을 가져올 수 없습니다. 당신이 정말로이 일을 강요하는 경우
후 귀하의 요청에 적절한 Cache-Control
헤더를 설정 :
headers = {'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}
result = urlfetch.fetch("http://foo/route", None, urlfetch.GET, headers)
이
Issue을 보라.