Re: squid3 comments

From: Henrik Nordstrom <henrik@dont-contact.us>
Date: Thu, 01 Mar 2007 17:31:08 +0100

ons 2007-02-28 klockan 09:19 -0500 skrev Jeremy Hall:
> Is squid3 faster or slower than squid2?

From my incomplete tests and experience:

Squid-3 is noticeably slower than Squid-2.6, but not by a huge amount.

Squid-3 is faster than Squid-2.5 in some workloads involving many
concurrent connections, but this only thanks to the epoll/kqueue support
which makes the kernel waste less time looking for ready
filedescriptors. Same for Squid-2.6 compared to 2.5. Neigher Squid-3 or
Squid-2.6 has received any code optimizations compared to 2.5.

Squid-3 source code size is about 30% larger than 2.6 (number of lines
of actual code, after eleminating blanks and {} lines but keeping
comments, ingoring helpers and cppunit).

In "raw processing power" of the code the ranking is (high request &
response rate, but very few concurrent connections)

1. Squid-2.5
2. Squid-2.6
3. Squid-3

In amount of requests/s in larger scale with many concurrent connections

1. Squid-2.6
2. Squid-3
3. Squid-2.5 (if it survives at all)

Squid-2 with the small optimizations done by Adrian ranks top in both..

In terms of known bugs we have

Squid-2.6 (a handful)
Squid-2 (about the same as 2.6)
Squid-2.5 (a little more than 2.6, no longer maintained)
[big gap]
Squid-3 (quite many...)

Unknown bugs quite likely looks about the same.

Active developers is a bit too few in both code bases.

Personally I find the Squid-3 code base a bit alien in many areas, not
at all easier to follow than Squid-2 and yet sufficient different in
many areas to get quite lost.. Suffering a bit from converting to C++
without first getting a clear view of the underlying code & data
structure..

Some parts is much better structured than Squid-2 however.

The biggest negative on Squid-3 is time.. it's been in slow development
for very long, and almost constantly (at least for the last 3+ years)
with core issues preventing serious testing. I am quite scared of how
many bugs will pop up their ugly heads once the code is sufficiently
stable to allow some serious testing.

But hopefully the forward porting of bug fixes from Squid-2 has helped.
At least it won't have most of the bugs fixed in Squid-2 since the two
code bases forked 4.5 years ago.. Many many thanks to Guido which has
done a great job in helping with the forward porting of squid-2 patches.
Without this Squid-3 would surely be a dead end dragging not only it's
own bugs but also many of the Squid-2 bugs from the last 4 years or so..

Regards
Henrik

Received on Thu Mar 01 2007 - 09:31:15 MST

This archive was generated by hypermail pre-2.1.9 : Sun Apr 01 2007 - 12:00:01 MDT