From: Jakub Narebski <jnareb@gmail.com>
To: Lea Wiemann <lewiemann@gmail.com>
Cc: git@vger.kernel.org, John Hawley <warthog19@eaglescrag.net>,
Junio C Hamano <gitster@pobox.com>, Petr Baudis <pasky@suse.cz>,
Lars Hjemli <hjemli@gmail.com>
Subject: Re: Gitweb caching: Google Summer of Code project
Date: Fri, 30 May 2008 12:02:23 +0200 [thread overview]
Message-ID: <200805301202.25368.jnareb@gmail.com> (raw)
In-Reply-To: <483FABB4.1010309@gmail.com>
On Fri, 30 May 2008, Lea Wiemann wrote:
> Jakub Narebski wrote:
> >
> > you cannot assume that memcached API is installed, so
> > you have to provide some kind of fallback.
>
> That fallback would be to have no caching. I think that's acceptable
> -- I'm not too willing to implement caching for two API's.
I hope that you would make a wrapper around memcached (caching engine)
API (it's a pity we cannot use CHI unified Perl caching interface),
so it would be easy for example to change to filesystem based cache,
or size aware filesystem based cache, or mmap, etc... I mean here
that even if you don't implement two caching API's at least make it
possible to easy change caching backend.
Note also that memcached may not have sense for single machine
(single server installation), and does not make sense for memory
starved machines... and one can want gitweb caching even in that
situation.
> (Incidentally, memcached takes two shell commands to install and get
> running on my machine; I think that's acceptably easy.)
As John 'Warthog9' said wrt. using additional Perl modules for gitweb
caching, most sites that are used as web servers (and gitweb servers)
have strict requirements on stability of installed programs, libraries
and modules. IIRC the policy usually is that one can install packages
from main (base) repository for Linux distribution used on server, also
from extras repository; sometimes from trusted contrib package
repository. Modules which are only in CPAN, and programs which require
compilation are out of the question, unfortunately.
I think there is no problem wrt. memcached itself, I'm not so sure
about Perl APIs: Cache::Memcached and/or Cache::Memcached::Fast (and
optionally appropriate CHI modules/backends).
> > What's more, if you want to implement If-Modified-Since and
> > If-None-Match, you would have to implement it by yourself, while
> > for static pages (cahing HTML output) web server would do this
> > for us "for free".
>
> Are web servers doing anything that we can't easily reimplement in a few
> lines (and, on top of that, more easily tailored to different actions,
> projects, etc.)?
Can we reimplement it? I think we can. Easily? I'm not sure.
HTTP/1.0 If-Modified-Since should be failry easy; it would be harder
to support fully and correctly ETag (weak vs. strong tags),
If-None-Match (from web browsers I think), If-Match (from web caches)
it would take some work.
> > By the way what do you think about adding (as an option) information
> > about gitweb performance to the [HTML] output,
>
> Definitely a good idea!
I'd try to add it when I'd have a bot more of free time; unless you
would do this first.
--
Jakub Narebski
Poland
next prev parent reply other threads:[~2008-05-30 10:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-27 18:03 Gitweb caching: Google Summer of Code project Lea Wiemann
2008-05-27 21:53 ` Jakub Narebski
2008-05-27 22:54 ` Lea Wiemann
2008-05-28 12:14 ` Jakub Narebski
2008-05-28 18:33 ` Lea Wiemann
2008-05-29 23:27 ` Jakub Narebski
2008-05-30 7:24 ` Lea Wiemann
2008-05-30 10:02 ` Jakub Narebski [this message]
2008-05-30 14:59 ` Lea Wiemann
2008-05-30 15:07 ` Petr Baudis
2008-05-30 15:27 ` Lea Wiemann
2008-05-30 15:38 ` Petr Baudis
2008-05-30 16:04 ` Rafael Garcia-Suarez
2008-05-30 18:56 ` J.H.
2008-05-30 20:28 ` Junio C Hamano
2008-05-30 21:32 ` Lea Wiemann
2008-05-30 18:47 ` Lea Wiemann
2008-05-31 10:15 ` Jakub Narebski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200805301202.25368.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=hjemli@gmail.com \
--cc=lewiemann@gmail.com \
--cc=pasky@suse.cz \
--cc=warthog19@eaglescrag.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).