2015-07-15 17 views
5

Konfiguruję pamięć podręczną krawędzi Google Appengine przed oparciem na następującym artykule. http://www.xyhd.tv/2011/11/industry-news/setting-cache-control-headers-in-python-to-take-advantage-of-google-appengines-edgecache/Google App Engine Pamięć podręczna krawędzi nie działa

Działa do niedawna. Zauważam, że to już nie działa (kod statusu wszystkich żądań w dziennikach staje się 200 zamiast 204) Czy istnieje sposób, aby to naprawić?

UPDATE (2015/7/20)

Błąd został naprawiony! MIŁY!

+0

Czy używasz niestandardowej domeny? – mensi

+0

Po pewnym eksperymencie. Dowiedziałem się dziwnego, że pamięć podręczna krawędzi NIE działa z domeną niestandardową. Teraz działa tylko z * .appspot.com zamiast .. – lucemia

+2

Zalecam otworzyć problem na publicznym monitorze appengine – mensi

Odpowiedz

3

Przetestowałem jedną z moich tras, która wykorzystuje pamięć podręczną krawędzi i pokazuje status 204 w dziennikach. Pamiętaj, aby uwzględnić oba nagłówki w swojej odpowiedzi.

response.headers['Pragma'] = 'Public' 
response.headers['Cache-Control'] = 'public, max-age=%d'%time 

Zwykle trwa kilka uderzeń w tył, zanim zacznie się buforowanie krawędzi.

Wartość czasu musi wynosić co najmniej 61 sekund. Zazwyczaj ustawiłem to na co najmniej 120 i działa świetnie.

Jedna rzecz, o której nie myślę, że artykuł wspomina, to że aplikacja musi mieć włączone naliczanie opłat, aby to zadziałało.

Aktualizacja: wysłał kod odwołuje i otrzymuję status 204 odpowiedzi na pamięci podręcznej URL. Na poniższym zrzucie ekranu zobaczysz, że pierwsze trafienie miało status 200, a następnie 204, w których skopiowano bufor podręczny krawędzi. Adres URL braku pamięci podręcznej zwraca 200 za każdym razem, zgodnie z oczekiwaniami.

Console Logs

Aktualizacja (20.07.2015):

cache Krawędź teraz wydaje się działać podczas wywoływania aplikacji App Engine z obu niestandardowej domeny lub APP_ID.appspot.com. Widzę teraz 204 kody odpowiedzi w dziennikach dla obu. Nie zmieniłem żadnego kodu.

+0

Nadal nie działa tutaj. Próbowałem z następującego kodu. https://github.com/lucemia/appengine-edge-cache-test. i użyj poniższej niestandardowej domeny do przetestowania. http://temp.gliacloud.com/test/cache – lucemia

+1

Może spróbować usunąć nagłówek Expires. To może powodować problemy. Jeśli dostanę szansę, spróbuję uruchomić tę samą próbkę kodu. –

+1

Po pewnym eksperymencie. Dowiedziałem się dziwnego, że pamięć podręczna krawędzi NIE działa z domeną niestandardową. Teraz działa tylko z * .appspot.com zamiast ... – lucemia