Czy można buforować zasoby na stronach github? Zastanawiam się, czy powinienem rozważyć przeniesienie mojej aplikacji internetowej z mojego osobistego serwera na strony github i jedyne, co mnie do tej pory powstrzymywało, to to.
Serwer na github.io z pewnością buforuje.
Mam uruchomioną wersję demonstracyjną i byłem w stanie ustalić, że zestawy serwerów Last-Modified
pozwalają klientowi korzystać If-Modified-Since
i pobierać 304 z serwera, jeśli dane nie zostały zmodyfikowane od czasu ostatniego pobrania. Serwer również ustawia CacheControl: max-age=600
. Nie jestem specjalistą od pamięci podręcznej, ale rozumiem, że oznacza to, że klient może pobierać dane z pamięci podręcznej bez ponownego sprawdzania poprawności, o ile dane nie mają więcej niż 10 minut. Jeśli ma więcej niż 10 minut, musi skontaktować się z serwerem (ponownie dokonać walidacji) i może uzyskać odpowiedź 304.
Rezultatem jest to, że klient nie pobierze ponownie czegoś, co nie uległo zmianie, ale może minąć do 10 minut, zanim klient wykryje, że nastąpiła zmiana.
Wszystko to oczywiście może się zmienić, ilekroć sysadmins z github.io zdecydują się to zmienić.