On Thu, 28 Jan 1999, Arjun Saksena wrote:

> I am reading thru the src code and trying to make sense of how Squid Works.

I would suggest reading on-line documentation and FAQ before digging the
source code.
 
> 1.   The following is what someone told me about the Harvest Cache.
> 
> "The cache is faster than most due to the non-blocking nature of its I/O routines. 
>This is not accomplished by true multi-threading, but rather through a clever 
>manipulation of sockets using the select() funciont. A socket is only read from or 
>written to if it is ready for the operation."
>
> Does it also apply to Squid 2.2 ?

"Faster than most" depends on your definition of "most" and "fast".  Squid
does use select (or poll) mechanism though. Squid also may be configured to
use threads.
 
> 2. What is the difference between a per-connection state information and per-request 
>state information?

On a very high level, a request may have several connections associated with
it. For example, a miss request may have a connection to the origin server
and to the client. Also a request state includes information other than
connection(s). On the other hand, a connection may have no associated request
[or several requests]. For example, an idle "persistent" connection [or a
connection with "pipelined" requests]. 

Alex.

Reply via email to