使用varnishstat,指标'sess_herd'在交通期间增加了很多,似乎我可能达到了一个限制(300 sess_herd / s)
我认为,我没有后端问题(所有忙碌,不健康,重试,在0时失败)。 Backend_req / Client_req大约是150 req / s。
现在,我们的Varnish根本没有缓存,它只是“代理”我们的后端服务器。所以“通过率”约为150 req / s
什么可以解释这样的sess_herd?
此致
奥利弗
答案 0 :(得分:0)
会话放牧是一个计数器,用于指示正在进行的会话(TCP连接)何时从工作线程切换到服务员,以便在客户端认为时保留它。
默认情况下,连接会在发生这种情况之前将其工作线程保持50ms(在4.1中的timeout_linger参数)。
由于网络和客户端很慢,工作线程可以通过这种方式为很多客户端提供服务。这减少了所需的运行线程数。
实际上,这是在发送响应并等待重用连接上的另一个请求之后发生的。