Skip to content.

plope

Personal tools
You are here: Home » PyCon DC 2004 Sprint Days 1-2
 
 

PyCon DC 2004 Sprint Days 1-2

I've been at PyCon 2004 DC over the past couple of days sprinting along with some other folks on various things.

Yesterday (Saturday), I arrived pretty late (like, past 1PM). I didn't think anyone was going to be there for the sprint I was leading (Zope 2 sprint), but Drew Moore was there, and had been since something like 9am, basically waiting for me, although I think he kept himself entertained with the Zope 3 sprinters. Whoops! Sorry Drew! I had no idea really about what we would end up sprinting on (I planned to take a vote before we started) but, it turned out Drew was interested in making BackTalk work better, so we chatted about that for a while but didn't get very far. Then Paul Winkler showed up and he was interested in any variety of things including but not limited to making Zope serve large files faster. Then Duncan McGreggor showed up and he was willing to work on basically whatever we were doing, although he was keen on making Zope work with Twisted. So, basically, due to my poor leadership skills and the staggered arrival of the people at the sprint, at the end of the day on Sunday, we were all basically doing our own thing with the idea being that maybe we could work on all of these things at some point during the sprint. But we never really had a plan (my fault). But we recovered and went out for dinner, which was nice.

Today (Sunday), I arrived a little earlier (11:30), and Duncan and Drew were immersed in the Zope 3 tutorial that was ongoing. So me and Paul went into the other room (there were two sprinting rooms), and began work on making Zope serve large static files faster. The Zope 3 tutorial ended, and Drew came in and sat with me and Paul for a bit (not sure what happened to Duncan) while we debugged a new "FileCacheManager" product that exploits a feature we added to the Zope publisher on a branch (if you return a special "producer" object from app code, that object is streamed out to the browser without further effort on Zope's part). Paul and I got that mostly working and I checked the Zope portions of that into a branch, and we checked the FileCacheManager product that depends on the Zope core changes into the Zope CVS repository (Products/FileCacheManager). I am going to write some more tests for the core change and run it by Jim, but it seems like the right thing to do and hopefully I'll check it in to the 2.7 and HEAD branches soon. Whether we want to cram FileCacheManager into Zope proper is still undecided. I'd probably leave it as a 3rd party product and see how it does. It kinda sucks that you can only associate an FS object with one cache manager, as it means that the FileCacheManager should also probably do things that the HTTPCacheManager now does too.

Tomorrow, I hope to work a bit on BackTalk (Drew and Paul have expressed interest in that, we'll see if Duncan can tolerate it), and maybe Tuesday we'll wind up the day trying to make Zope run on top of Twisted. Itamar is there, maybe we can bug him with some questions.

Created by chrism
Last modified 2004-03-21 09:59 PM

AdaptableCacheManager?

I had a thought last night after we finished... it might be nice to have a more adaptable cache manager which would have multiple caches (at least one RAMCache and one HTTPCache, optionally a FileCache or another third-party cache), and a list of rules for determining which cache to use for associated objects. The UI might borrow a bit from CMF's Caching Policy Manager.
The rules could maybe be written as TALES expressions.

Unfortunately, AFAICT this only solves half the problem... in OFS/Cache.py, Cacheable assumes that it is associated with at most one cache and at most one cache manager. Maybe there'd be a way to write an adaptable cache that wraps multiple underlying caches, I dunno.

Wiki

Duncan slapped up a wiki where we're putting notes from the sprint.
<a href="http://zope.org/Members/adytumsolutions/pycon2004/Zope2Sprint">
http://zope.org/Members/adytumsolutions/pycon2004/Zope2Sprint</a>

proposal

FYI, I added a proposal to the dev.zope.org wiki regarding both the changes to ZServer and the FileCacheManager... it's at http://dev.zope.org/Wikis/DevSite/Proposals/FasterStaticContentServing .