Webaccelerator with mod_gzip ?
Christian Bjerre writes: "Currently I'm using Squid as an webaccelerator to sit infront of apache and serve static files (.html .js .gif .png .jpg). Squid also serves my dynamic content which is .php files. My goal is to let Squid or another opensource program gzip the html, since I have Squid installed on another machine, where cputime is not an issue. I've been reading page up&down and Squid dosen't seem to support gzip encoding in Webaccelerator mode. I haven't tried feeding it gzipped html, which could be a solution, if there was a way of having Squid handle all content as binary. What do you guys & girls do to minimize bandwidth usage? // chris"
Network bandwidth is increasing much faster than computational power. As time tends towards infinity, trying to "save bandwidth" at the expense of more complicated processing is dumb.
Tarsnap: Online backups for the truly paranoid
HTTP is designed to be cached; for example, the Vary: header lets the cache know what to cache based on; in this case it'd be Content-Encoding.
:)
Squid may well be smart enough to know to cache documents with two different Content-Encoding's as different entities, but if not you just add Vary: Content-Encoding so it does.
(that, at least, is the theory, I'm afraid I can't claim to have read the entire HTTP 1.1 spec, tsk
Such reasoning, while technically valid, lacks consideration to real world demands for low cost (hence, less bandwidth).
I made some experiences with RabBit recently. Maybe you can't use it, but check it for ideas, as it aims your very needs, IMO.
Apache+mod_proxy+mod_cache can also be an httpd accelerator (aka reverse proxy) and I've had great success with it. My original configuration used Squid but several limitations with Squid forced me to investigate the alternatives. I finally settled on Apache and I've been very happy with it. Apache also has better support for 301/302 rewriting (the PassProxyReverse directive) than Squid, and this was a deciding factor for me in dumping Squid and going with Apache.
I run mod_gzip on my servers.
I was using tcpflow to monitor the connections, and I noticed something strange. It seems most IE versions (like 5, for instance) append the following string on the request connection:
Accept-Encoding: gzip, deflate
that tells the server it can send compressed data.
Strangely, I notice that if I access the very same site using IE 6 + patch Q312461 on XP, it DOES NOT send such string, thus all my requests return unencrypted.
I checked, and I am not using a proxy, and on advanced options, Use HTTP 1.1 is checked allright.
How can I enable compression ? It *SHOULD* be default. Has somebody else noticed this strange behavior ?
-
Roses are #FF0000, Violets are #0000FF, find / -name '*base*' |xargs chown -R us && mv zig greatjustice
anyone looked at edge server technology? its something ibm and various others came up with to basically move the content out towards the clients.
what i'm wondering is if that technology conecpt has any other compression novel ideas.
I have been using the RabbIT proxy for a while now..
It is really good for low bandwidth connections like Mobile Phone connections (such as 9600 and 14400bps)
It GZIP's both Dynamic and Static content from any source.
I've been using it with Mobile Internet Explorer on my iPAQ via my Mobile phone
It's worth looking into.
There is an article on php's output buffering (which includes compression)here
There are also a collection of third party class's which you can browse here.