WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Cache och Gzip (https://www.wn.se/forum/showthread.php?t=30211)

Timofey 2008-06-29 12:14

Tänkte snabba upp några egenkodade sidor genom att aktivera gzip och eventuellt också cacha filerna.
Skriptspråket är php.
Hur har ni gjort själva? Vilken metod användet ni för att aktivera gzip?
Finns det någon färdig kod att använda sig av om man vill att php-sidorna ska cachas?

Tack för hjälpen på förhand! :)

grazzy 2008-06-29 12:39

Det går inte snabbare att skicka en gzip-fil på en snabb uppkoppling, det tar mindre bandbredd. Snarare drar det mer cpu (såvida du inte lagrar filerna som .gz själv på servern).

Cache kan vara praktiskt, där finns ju färdiga lösningar tex squid. Ett enkelt sätt annars är att använda ob_start och ob_get_contents för att skriva ut hela sidans innehåll till en variabel. Den filen kan du sedan skriva till en fil som blir din cache. När sidan laddas om nästa gång kollar du senaste skrivtid till din cache-fil och avgör ifall du vill skapa en ny cachad version eller visa den gamla.

Timofey 2008-06-29 12:49

Tackar grazzy!
Gzip kan jag alltså glömma, är det det du menar? Har läst många rekommendationer på att man ska stödja gzip för större sajter.

Det funktionelitet du beskriver låter väldigt rimligt, men det måste väl redan finnas färdig kod i någon form (lite onödigt att uppfinna hjulet på nytt, menar jag). Någon annan som använt Squid? Är det enkelt att implementera? Hittar inga php exempel med squird ännu. Kollade snabbt i dokumentationen och det ser väldigt avancerat ut. Jag letar bara efter en enkel cache-funktion för att använda på webbhotell.

grazzy 2008-06-29 12:56

GZIP gör inte din site snabbare på PHP nivå, den gör den eventuellt snabbare att ladda på en långsam anslutning. Om det svarar på din fråga så kör jag gzip på i princip alla mina sidor (via mod_deflate i httpd.conf).

Timofey 2008-06-29 13:00

Citat:

Originally posted by grazzy@Jun 29 2008, 11:56
GZIP gör inte din site snabbare på PHP nivå, den gör den eventuellt snabbare att ladda på en långsam anslutning.
Nej, nej, det är jag med på. Däremot kan man genom att cacha sidorna undvika att hela php-skriptet behöver köras vid varje sidladdning.

grazzy 2008-06-29 13:33

Jag har inte gjort det själv, men du skulle kunna lagra din cache direkt som .gz-filer, då kan webbläsaren hämta dem direkt. Du kan tex själv sätta headern som säger till webbläsaren att en gzippad fil är på ingående och sedan skicka en lokalt lagrad fil med file_get_contents() direkt.

Tänk dock på att kolla så att browsern stödjer gzip då, allt du behöver göra annars är att packa upp filen innan du skickar den, det blir snabbare än att packa den för de 90% som stödjer gzip.

htiawe 2008-06-29 14:44

Prova PHP Speedy:

http://aciddrop.com/php-speedy/

Innocast 2008-07-01 16:29

eAccelerator för servern så man slipper kompilera om PHP-koden varje gång kan ju vara ett tips om man tycker att gzip tar på krafterna.

Men... Vad har du helst... En klient som sitter och suger på en httpd-process 5 sekunder eller packa ihop det med gzip på 1 sekund och skicka iväg på 1 sekund... Man sparar fortfarande kräm på datorn genom att gzippa, även om man ökar belastningen på en annan process så minskar man belastningen mycket på andra... Är ni med eller är jag bara snurrig? :)


Alla tider är GMT +2. Klockan är nu 11:31.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson