当我打开我的http代理服务器的haproxy统计报告页面时,我看到如下内容:
Cum. connections: 280073
Cum. sessions : 3802
Cum. HTTP requests: 24245
Run Code Online (Sandbox Code Playgroud)
我没有在配置中使用'appsession'和任何其他与cookie相关的命令.那么'会话'在这里意味着什么?
我想haproxy通过这个顺序识别http会话:
我对吗?
今天早上我问自己同样的问题.
通过http://www.haproxy.org/download/1.5/doc/configuration.txt搜索我遇到了这个非常简短的定义(隐藏在参数描述中):
A session is a connection that was accepted by the layer 4 rules.
Run Code Online (Sandbox Code Playgroud)
在您的情况下,您显然使用Haproxy作为layer7/HTTP负载均衡器.如果会话是TCP连接,由于客户端/前端Keep-Alive,拥有比会话更多的HTTP请求是正常的.
然后我想高连接数表明很多传入连接在被HTTP层考虑之前就被拒绝了.例如,通过基于IP的ACL.
据我所知,引入"会话"一词是为了确保两个不同的概念没有混合:
实际上,会话不是在连接之后而是在连接之前引入的。端到端连接称为“会话”。随着SSL,代理协议和第4层ACL的引入,需要将端到端会话分割成较小的部分,因此引入了“连接”。Zerodeux完美地解释了您所观察的内容。