brad at danga.com
Thu Jul 21 08:59:35 PDT 2005
On Thu, 21 Jul 2005, marcel evenson wrote:
> Now that I have this all up and running I have a few more questions.
> 1. In the perl and php client API I don't see a method for grabbing the
> filesize for the key? Am I missing something? Doesn't the filesize have to
> be sent with the header info (Content-Length:) I'm using X-REPROXY..
Don't need it --- Perlbal will fill it in. You can, however, send the
X-REPROXY-EXPECTED-SIZE header if your application knows what size to
expect to send. In that case Perlbal will verify that if there are
multiple copies, it finds a copy with the right size. (just extra
> 2. Are there gracefull startup and shutdown scripts for mogilefsd, mogstored
> , and perlbal (I know you can telnet to perlbal and issue commands) ?
They've been written. They're in Jay Bonci's deb archives (he packaged it
all up for Debian), but I'm not sure the URL.
> 3. Does perlbal do any type of request logging?
No. As it started out a reverse proxy, I always said the app should do
it. It might be useful for webserver mode, though.
We'll probably build it at some point. Or I'd take a patch. Can't use
syslog() because it could block. You'd need to use our Danga::AIO layer
to do async writes with whatever AIO is available, and make sure only one
outstanding write is out there so you order them correctly. If a write is
already outstanding, just append to a buffer of things to write next.
Maybe only block if that buffer-to-be-written-next gets too large, and
emit some huge warning that your disk subsystem is interfering with the
current level of traffic.
Also, I'd ideally like to see logging done as a per-service plugin, even
if it means sprinkling new hooks throughout the generic code.
> Also just a note that the current cvs version of perlbal won't complile for
> me on debian sarge.
> # make
> make: Warning: File `Makefile.PL' has modification time 1.2e+04 s in the
> Makefile out-of-date with respect to Makefile.PL
> Cleaning current config before rebuilding Makefile...
> make -f Makefile.old clean > /dev/null 2>&1 || /bin/sh -c true
> /usr/bin/perl Makefile.PL
> Checking if your kit is complete...
> Looks good
> Writing Makefile for Perlbal
> ==> Your Makefile has been rebuilt. <==
> ==> Please rerun the make command. <==
> make: *** [Makefile] Error 1
More information about the mogilefs