event engine library selection

Dag-Erling Smørgrav des at linpro.no
Tue Mar 14 12:16:01 CET 2006

"Poul-Henning Kamp" <phk at phk.freebsd.dk> writes:
> DES and I talked a bit about which event library to select for
> varnish long time ago and and I belive we have ISC's and Niels
> Provos' in the pool.
> As far as I can tell from inspection, the ISC code is "industry
> strength" where the Provos code is more "engineering sample".
> I'm quite worried that the multi-thread support in Provos library
> consists of creating events, and then as quickly as possible move
> them from the most recent engine to the one where they belong, that
> doesn't sound very safe to me.
> On the other hand, the Provos engine sounds like it is much more
> performance focused than ISC's engine, and that must count heavily
> for it as the acceptor/header-collector point is going to see
> significant load.

It also has several features the ISC code lacks, like support for
signals, kqueue, poll etc.

> If we decide on the Provos engine, we may have to spend time to fix up his
> multi-thread support and hope he will accept the patches.

He's a reasonable guy, I don't see any reason why he wouldn't.  In any
case, we'll want to keep our own copy of the code in our tree.

Dag-Erling Smørgrav
Senior Software Developer
Linpro AS - www.linpro.no

More information about the varnish-dev mailing list