我发现 HAProxy 提供的会话总数与 Google Analytics 记录的访问次数几乎相差一个数量级(HAProxy 统计页面上的数字高出 10 倍)。是我的配置有问题还是我理解错误?
答案1
HAproxy 中的会话是 TCP 会话。当您打开一个网页时,您可以有 10、20 个或更多 TCP 会话来下载该页面及其组件(图像、css、javascript 等...)。
Google Analytics 中的会话是访问。当客户端访问您的页面时,他/她会下载所有组件(因此有多个 TCP 会话),但这只算一次访问(当客户端执行相应的 javascript 时,对 google analytic 的调用就完成了一次)。
答案2
您必须考虑到 Google Analytics 访问量很可能使用跟踪 cookie 来衡量,因此在给定的时间内来自同一用户和浏览器的两次不同访问可能只算作一次访问,而 HAProxy 总会话计数器是 IIRC,即与您的服务器建立的 HTTP 连接总数,因此在前面的例子中,HAProxy 将显示两个总会话而不是一个。