Słyszałem, że sugeruje, że ustawienie kodowania zawartości strony na zip lub gzip skróci czas ładowania i zmniejszy przepustowość. Czy warto to wdrożyć w przypadku przeciętnej witryny lub tylko witryn o dużym obciążeniu? W jaki sposób można skonfigurować strony, które będą wyświetlane w ten sposób w środowisku LAMP? Czy jest praktyczna różnica między zipem a gzipem?
compression
gzip
content-encoding
Oren Hizkiya
źródło
źródło
Odpowiedzi:
Jest to absolutnie warte zrobienia, nawet w przypadku witryn o średnim lub niskim natężeniu ruchu. Chociaż zmniejszy to przepustowość (z niewielkim wzrostem wykorzystania procesora), prawdziwą korzyścią są dla użytkowników. Nawet w przypadku łączy szerokopasmowych można zauważyć poprawę wydajności podczas uzyskiwania dostępu do skompresowanych stron, ale użytkownicy wolniej działający w sieci i nowsze smartfony naprawdę to docenią.
źródło
Przeglądarka może wysłać nagłówek „Accept Encoding”, który mówi, że może akceptować różne rodzaje kodowania. Zwykle jest to „gzip, deflate”. (Google Chrome ma dziwny format o nazwie „sdch”, który możesz po prostu zignorować). Następnie, jeśli otrzymasz ten nagłówek z przeglądarki, możesz, jeśli chcesz, odesłać skompresowaną zawartość za pomocą gzip lub deflate. Kiedy to zrobisz, oczywiście musisz powiedzieć przeglądarce, co zrobiłeś, więc dodajesz nagłówek „Kodowanie treści” do swoich wiadomości wychodzących.
Zarówno formaty gzip, jak i deflate są zdefiniowane w RFC (dokumenty standardów internetowych). Nie ma opcji „zip”, chociaż w niektórych przeglądarkach może być opcja „bzip2”.
Teraz twoim problemem jest zakodowanie swoich rzeczy w tym formacie i odesłanie ich z powrotem. Jeśli używasz Apache'a, istnieją sposoby, aby ustawić go tak, aby robił to automatycznie (mod_deflate itp.). Jeśli wysyłasz obrazy, pamiętaj, że większość formatów obrazów, takich jak JPEG, PNG, GIF itp., Jest już skompresowanych, więc nie zyskujesz na ich kompresji. Zasadniczo działa tylko w przypadku HTML, CSS, zwykłego tekstu lub JavaScript.
Musisz zachować ostrożność stosując kodowanie „deflate”, ponieważ Internet Explorer ma długotrwały błąd, w którym nie rozumie go zbyt dobrze. Wierzę, że fantazyjne spodnie, takie jak Google App Engine, automatycznie ustalą, jakiej kompresji użyć i zastosują ją dla Ciebie.
źródło
Aby udzielić odpowiedzi na pytania Jasona Birchsa i Kinopikosa : kolejnym, coraz ważniejszym powodem, dla którego absolutnie chcesz zastosować tę (bardzo prostą) optymalizację, jest ogłoszenie Googles o wykorzystaniu szybkości witryny w rankingu wyszukiwania w sieci od 9 kwietnia 2010 r. Na pewno nie chcesz przegapić na tak łatwej poprawie wyników SEO;)
Gdy zaczniesz patrzeć na rzeczy z tego punktu widzenia, najprawdopodobniej skorzystasz z odpowiednich narzędzi (i lubisz z nimi pracować), dając ci wgląd w to, jak działają Twoje strony i co możesz z tym zrobić, aby je poprawić:
źródło