我们如何使用HAProxy实现单机200万SSL连接
现在我们对每秒请求的最大限制可以随机器不同而变化,所以我们只剩下一个任务,如上所述,实现 3 倍的生产负载:
在 220k 的测试环境下,我们再次陷入僵局. 无论客户机数量多少或睡眠时间多少,TCP 连接数似乎都停留在那里. 我们来看一些估算数据. 220k TCP 连接,每秒 900 个请求 = 110,000 / 900?= 120 秒.达到了 110k,因为 220k 连接包括上行和下行. 当我们在 HAProxy 开启日志时,我们怀疑 2 分钟是系统某处的限制. 我们可以看到 120,000 ms 是日志中大量连接的总时间. 在进一步调查中,我们发现 NodeJs 的默认请求超时为 2 分钟. 瞧! 但我们的高兴显然很短暂,在 130 万,HAProxy 连接数突然下降到 0,并再次开始增长.我们很快检查了 dmesg 命令,里面可以查到 HAProxy 进程一些有用的内核信息. 基本上,HAProxy 进程已经耗尽内存.因此,我们决定增加机器内存,并将其转移到 nbproc = 3 的 16 核 64GB 的机器,经过调整,我们终于可以达到 240 万长连. 后端代码下面是正在使用的后端服务器代码. 我们还在服务器代码中使用 statsd 来获取客户端接收的每秒请求的统计数据. 我们还有一个小脚本运行多个服务器. 我们有 8 台机器,每台机器部署了 10 个后端服务. 我们真的认为有条件的话可以进行无限扩容进行压测. (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |