Brown trousers time :~

Edmund von der Burg evdb at
Thu Oct 11 10:16:44 BST 2007

If you can get away with putting javascript onto the pages you want to
track then you can use the clientside javascript to put together a GET
request with everything in it (including tracking cookie). This means
that your webserver can just be a static server which logs the
requests to a file which is then processed.

Makes the front end dead easy to do and even easier to scale. All you
need to serve is a bit of static javascript, and a gif. If you need to
scale just add boxes. Still leaves the tricky part of analysing the
data though.

I notice that Google analytics does this, as demonstrated by this gif
it requested:

Lyle - if you want to watch this sort of thing get the 'FireBug'
extension to FireFox and look at the 'net' tab, or install wireshark
which will let you capture _all_ traffic that occurs.

On 10/10/2007, Paul Orrock <paulo at> wrote:
> Lyle - wrote:
> > Paul Orrock wrote:
> >> If all this webserver is going to do is handle these clicks I would
> >> still bet on a lightweight perl http listener with all the click
> >> handling code build into it.
> I think what I was trying to get at was that the best way to do this
> would be to have the click tracking engine (that actually gets told by
> the browser "i have visted page x") completely outside the webserver
> serving the site.
> Client site can be served by any webserver / technology I
> want to. To use your tracking engine all I have to do is put a piece of
> html in my pages that requests an image of
> is a simple http server which I'd probably base on
> something like Net::Server::PreFork and put in the bits of HTTP that I
> need to get the cookie, the referrer and the client id. It then stores
> these in the database or flat file and returns a 1px x 1px gif which can
> be set to not even display on most browsers by setting width and height
> to 0.
> There are a load of advantages to doing this, it's easily extensible,
> about as fast as you could make it without much effort, it's easily
> configurable and also you could compile it into an executeable to run on
> any platform, oh and the whole thing is written in perl. :-)
> Paul.

In reality I'm evdb at -

More information about the mailing list