[pmwiki-users] Speed up PmWiki
Patrick R. Michaud
pmichaud at pobox.com
Wed Aug 15 08:50:58 CDT 2007
On Wed, Aug 15, 2007 at 07:37:10AM +0200, Petko Yotov wrote:
> On Wednesday 15 August 2007, Patrick R. Michaud wrote:
> > markups that depend on the visitor's identity
> > {$Author}
> > {$AuthId}
> > (:if auth:)
> ...
> > markups that include pages or content that might not
> > be available to all visitors
> > (:include ReadProtectedPage:)
> > {ReadProtectedPage$:PageTextVar}
>
> I believe these above may and should be cached, for ordinary visitors, that
> are not identified and without any special permissions. These are supposed to
> be the enormous part of the visits, in a usual website configuration.
Assuming that we use the RewriteUrl method identified in PITS.00966
that bypasses pmwiki.php entirely -- this would mean there's no way
to distinguish "ordinary visitors" from those with special permissions.
Thus once a copy of the page is cached, all visitors would get the
cached version.
> If I recall correctly, the (:title:) markup currently invalidates all cache,
> and that is unfortunate.
The (:title:) markup invalidates caching of any page containing that
directive (which isn't exactly the same as "invalidate all cache").
You're quite correct that this needs to be fixed somehow.
> How about this: We can also design a special sort of super-short-time cache,
> which could store a HTML output (for non-identified visitors) for 5 minutes,
> and it could send this cache to the visitors without any other checks of
> permissions/last-modified pages/pagelists.
IMO, using time limits on caches really isn't useful here. First, it
greatly reduces the odds of a cache hit (i.e., we only receive a benefit
when a page is hit more than once every X minutes). Second, it's not
needed, since we already have superior methods to determine when the
cache is invalidated (i.e., we can invalidate things based on a new
posting).
> This may even be done before calling pmwiki.php: just checking for
> our cookie, and if there isn't a cookie, and the cache is newer
> than 5 minutes, send the cache.
Which cookie?
Pm
More information about the pmwiki-users
mailing list