加入收藏 | 设为首页 | 会员中心 | 我要投稿 网站开发网_盐城站长网 (https://www.0515zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

我们如何使用HAProxy实现单机200万SSL连接

发布时间:2021-01-14 18:34:59 所属栏目:站长百科 来源:网络整理
导读:副标题#e# 《我们如何使用HAProxy实现单机200万SSL连接》要点: 本文介绍了我们如何使用HAProxy实现单机200万SSL连接,希望对您有用。如果有疑问,可以联系我们。 导读:架构师需要精确的了解服务的支撑能力,也希望通过调优来发挥单个节点最大的价值.本文分

使用 AB 碰到的一个问题是到了某个点 TCP 连接数不再增加.我们有大约 40 – 45 个客户端运行在 5 – 6 台客户端机上,但依然不能达到想要的规模.理论上,TCP 连接的数量应该随着 sleep 时间的增加而增加,但对我们来说并非如此.

引入 Vegeta

因此我们需要寻找一个负载测试工具,这些工具需要具有更好的扩展性和更好的功能性,最终,我们找到了 Vegeta [6].
从我的个人经验来看,我已经看到 Vegeta 具有极高的扩展性,与 ab 相比,它提供了更好的功能. 在我们的负载测试中,单个 Vegeta 客户端能够产生相当于 15 倍 ab 的吞吐量.

下面,我将提供使用 Vegeta 的负载测试结果.

使用 Vegeta 进行负载测试

首先,看看我们用来运行一个 Vegeta 客户端的命令. 进行测试的命令称为 attack:(酷吧?)

我们太喜欢 Vegeta 提供的参数了,来看看下面的一些参数.

  • -cpus = 32 指定此客户机要使用的 CPU 核数. 由于要生成的负载量,我们不得不将客户机扩展到 32 核 64G. 虽然上面的速度也不是特别高. 但是当有大量处于 sleep 状态的连接时,维持这些连接也会产生比较大的开销.
  • -duration = 10m 我想这是不言自明的.如果没有指定任何持续时间,测试将永远运行.
  • -rate = 2000 每秒请求的数量.

所以如上图所示,我们在一台 4 核机器上每秒达到了 32k 请求量. 如果你记得临界点图,在这种情况下,非 SSL 请求的临时点是 31.5k.
从负载测试中看更多的结果.

16k 的 SSL 连接也不错. 请注意,在我们的负载测试过程中,必须从头开始,因为我们采用了一个新的客户端,它给了我们比 ab 更好的结果. 所以不得不再来一遍.

CPU 核数的增加导致机器在未达到 CPU 限制前,每秒可以用的请求数增加.

(编辑:网站开发网_盐城站长网 )

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!