jacolmode at wp.pl
Wed Jun 29 18:37:44 CEST 2011
I'm planning on using Varnish in my project as a reverse proxy cache. Mainly to cache dynamically created streaming content at the backend side. The process is CPU intensive and takes a fair amount of time to complete.
I would like to ask you all which of the following requirements can be accomplished by using the build-in functions, writing a dedicated module (version 3.0) or changing the default functionality by patching the source:
1) rate-limiting - a memcached set of counters, ex. ip address/time, uri/time, ...
2) streaming - content generated via a backend should be streamed ASAP to the client and saved to cache at the same time - ideally while the content is generated it would be very good to have the ability to stream to more then one client (non blocking object)
3) request manipulation - incoming request from a client is a HTTP GET (domain/object_id) and should be transformed into HTTP POST to a backend app extended with additional set of parameters (headers) taken from db (memcache, mongodb, tokyo tyrant, mysql)
4) cache expire - based on popularity and size of an object - free space should be reclaimed by purging least popular objects (amount of traffic they generate)
Thank you in advance,
More information about the varnish-misc