Gianugo Rabellino wrote:
>
> After a long period of inactivity I was able to spend some time on
> Cocoon in this weekend. I must confess that I'm really impressed with
> the work going on so far: Schecooon, XMLForm, Treeprocessor and so on
> are making Cocoon plans for world domination much closer to reality
> :-) Thanks to everyone for this wonderful software!
>
> Now for the [VOTE] I'm calling. I'm recalling here the thread that I
> launched some time ago about cache friendly HTTP headers (see
> http://marc.theaimsgroup.com/?t=101074439900001&r=1&w=2 for details).
> I have a working[1] version sitting on my hard drive of a sitemap
> extension which allows to set custom "Expires" headers for every
> pipeline. The syntax (and functionality, and scope...) is compatible
> with Apache's mod_expires (see
> http://httpd.apache.org/docs/mod/mod_expires.html) from which the idea
> was stolen. With this modification you can configure a sitemap as
> follows:
>
> <pipeline expires="now plus 2 weeks">
> <match pattern="images/**">
> <read src="static/images/**" />
> </match>
> <match pattern="files/*.html">
> <generate src="static/files/{1}.xml" />
> <transform src="style/my.xsl" />
> <serialize/>
> </match>
> </pipeline>
>
> <pipeline expires="access plus 2 hours 15 minutes">
> <match pattern="feed/*.html" />
> <generate src="http://my-feed/{1}.rss" />
> <transform src="style/my.xsl" />
> <serialize/>
> </match>
> </pipeline>
>
> <pipeline>
> <match pattern="dynamic/*.html" />
> <generate src="this/changes/everytime/{1}.xml" />
> <transform src="style/my.xsl" />
> <serialize/>
> </match>
> </pipeline>
>
> Having in front of this setup a reverse proxy would massively help in
> building scalable sites, since many resources would be served by
> Cocoon only once in a while, with the proxy doing most of the job. My
> first tests are astonishing: with this setup scalability in most cases
> won't be an issue anymore. Not to mention usability in developing
> webapps: there would be no need anymore to mix and match static
> resources served by Apache for speed and scalability sake and synamic
> stuff served by your favourite app server: anything can be safely
> enclosed inside a webapp. Last but not least, this can be an enourmous
> bandwith saver.
>
> Note: at this point this has nothing to do with caching, infact
> Cocoon's internal cache is untouched. It might be worth considering,
> however, to make the expires settings available to the cache system so
> that it might be used to calculate/override resources lifetime a
> priori (the cache might have an implicit value for the resource
> validity).
>
> Enough blahblah, since this stuff has to do with the sitemap itself
> (there are no back incompatible changes but still it's a modification
> of the sitemap language), before committing I want to see if there is
> enough interest in it, so let's go for the votes:
>
> 1. Would you like this addition to be committed to HEAD? If so I
> promise to come up with documentations and a short HOWTO on how to
> connect a reverse proxy with Cocoon.
>
> 2. Would you like the "expires" settings to be available in the
> current ObjectModel so that the cache might become aware of it?
>
> Ciao,
+1 for both.
About the syntax, mod_expires states that 'now' and 'access' are
equivalent, so what about removing 'now/access plus' and only keep the
duration ?
Sylvain
--
Sylvain Wallez
Anyware Technologies Apache Cocoon
http://www.anyware-tech.com mailto:sylvain@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org
|