Re: pipeline_prefetch directive

Amos Jeffries <[email protected]>
Newsgroups gmane.comp.web.squid.general
Message-ID <[email protected]>
On 3/01/25 21:23, Jonathan Lee wrote:
> Hello fellow Squid Users,
> 
> I understand this directive is removed in Squid7 again I am still trying to understand more about what it did and does in the older versions of software.
> 

It was an attempt to implement the pipeline mechanism of HTTP/1.1
see <https://httpwg.org/specs/rfc9112.html#pipelining>


FYI; very few people have even considered turning it on. So do not be 
surprised if you do not get a response to your more detailed questions 
about its behaviour in current Squid.


> pipeline_prefetch historically was on or off for settings however today it is n+1 or a numerical value for the variable n.
> 
> My question is after many trial and errors what is a good range to use for a 4GB memory system,
> 

> I have attempted many different n values some being 100, 200, 300, 5, 10 etc it appears to work well with 100 or maybe it was my other changes with
> using the directive read_ahead_gap 64 KB and testing 16 and 32
> 
> what is a good solid go go juice number for pipeline_prefetch? I do notice massive increases in facebook loads when I have it at 100 however decreased performance with news websites. It is like a can’t win directive for me. Finally I thought best to ask.
> 

IMO the answer to that depends on your proxy traffic.

  * A server that is able to produce responses very fast, operating over 
a long-delay connection can benefit from requests being sent in a pipeline.

  * As can two proxies communicating over a multiplexed, fast, **and** 
reliable connection.


Most situations risk adding what is called Head-Of-Line (HOL) blocking 
delays for the pipelined requests. HTTP/2 was created to solve that 
problem and does far better.


> I do understand it is no longer recommended to be used this is simply for speed and the system is secure behind a firewall.
> 


Firewall existence and security are not relevant to pipeline_prefetch.

Pipeline as implemented by Squid is only of much benefit when you 
already have a high speed situation. As mentioned above.

The primary use-case of Squid pipeline_prefetch to my knowledge was for 
the cache_peer links on proxies acting as accelerators on either end of 
a geosync satellite communication link. Servicing international level 
traffic relay for military outposts or small(ish) national teleco's.
   The primary factor being very long-distance / high-lag TCP links.


Cheers
Amos

_______________________________________________
squid-users mailing list
[email protected]
https://lists.squid-cache.org/listinfo/squid-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.