Thread:Requests for comment/Partial page caching/A few notes/reply

My memory of the ESI stuff is a bit hazy, but here is a bit of what I can remember:


 * ESI support in Squid was quite buggy and slow in 2004/5. It used an XML parser (libxml IIRC), which failed if the page was not well-formed.
 * Invalidation/purging needs to be very reliable and fast (synchronous actually) if editors are to use cached content right after an edit. Synchronous is not too realistic, so a workaround (e.g., a cookie or url parameter to disable caching for a short period after edits) would probably be needed.
 * The number of fragments should be kept low to reduce ESI overhead. Both the MonoBook and Vector HTML already separate the UI/user-specific parts quite well from the content, but there is still user-specific stuff in the content area. This would need to be moved to CSS (preferably) or JS. Page-specific tools and tabs also depend on the page and user rights, but that might be doable based on cookie values and the page title defined in an ESI directive.
 * There is some potential to do large transclusions using ESI, and avoid some whole-sale purging of including pages that way. Only works well for self-contained transclusions.