一分钟了解阿里云产品:性能测试通过SLB保持百万级TCP连接C1M

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介:

一直以来,对SLB的转发性能到底如何比较好奇。于是,最近开了一个测试用的SLB来玩玩C1M,即我们能不能通过一个SLB来保持1百万个TCP长连接?

 

 

我的测试配置如下:

 

  • 1个内网SLB,端口配置8000->8001, TCP按最小连接数转发。
  • 3个后端server ECS,配置4核4G ram。
  • 17个client ECS,配置1核2G ram。
  • server是一个简单的echo service, client每秒向SLB发起500个TCP连接请求,建连后每隔20秒向server发送一个"hello"字符串,server收到后将"hello"发回。连接一旦建立,双方都不close, 会被一直保持住。
  • server和client均使用Erlang实现。

 

 

配置完成让我们来说说测试步骤和测试结果:

 

首先在3个ECS上启动listen在8001端口的server。

然后在17个client ECS上分别启动client,每个client通过SLB的8000端口和后端server建立60000个TCP连接 (尽量用完64k个端口)。

 

测试结果见图,稳定保持百万级TCP连接, 下图只显示了960k (由于SLB的监控数据更新得太慢,我们没有等到它刷新完毕)。最终的峰值是17*60=1020k。

 

3台后端服务器上分别保持了360k, 300k和360k连接。之所以不平均是因为我们一开始想试试只用两台4核4G的ECS能不能hold住C1M,走到720k的时候发现内存不够用了,于是新加入了第三台。由于使用的最小连接数转发,新增的300k连接都全部被分到了这个新加入的节点上。从下图可以看到4核CPU处理C360k无压力,但4G内存已接近oom。

 

17台测试客户端各自的统计数据 (其中8台,其余的类似)。


 

综上可以得出结论:我们可以通过一个SLB来保持1百万(甚至更多的)TCP长连接。

 

如果您想仔细研究负载均衡这方面问题,请访问:https://bbs.aliyun.com/read/228428.html

 

 

 

 

 

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
1月前
|
域名解析 弹性计算 监控
slb测试基本配置检查
slb测试基本配置检查
95 60
|
12天前
|
传感器 安全 物联网
阿里云先知安全沙龙(北京站) ——车联网安全渗透测试思路分享
本文介绍了智能汽车的整车架构、协议栈结构、攻击点分析、渗透思路及案例分享。整车架构涵盖应用层、协议层和物理层,详细解析各层次功能模块和通信机制。攻击点包括Wi-Fi、USB、NFC等,展示车辆通信接口和系统组件的安全风险。渗透思路从信息收集到系统内部探索,利用固件漏洞控制车辆功能。案例展示了网段隔离不足导致的SSH访问和OTA日志审计漏洞,揭示了潜在的安全威胁。
|
1月前
|
监控 测试技术
slb测试会话保持功能
slb测试会话保持功能
38 6
|
1月前
|
弹性计算 负载均衡 监控
slb测试健康检查
slb测试健康检查
42 4
|
1月前
|
监控 负载均衡 容灾
slb测试配置
slb测试配置
34 5
|
2月前
|
数据采集 自然语言处理 数据库
深入体验阿里云通义灵码:测试与实例展示
阿里云通义灵码是一款强大的代码生成工具,支持自然语言描述需求,快速生成高质量代码。它在测试、代码质量和用户体验方面表现出色,能够高效地生成 Python 和 Java 等语言的代码,助力开发者提升开发效率和代码质量。无论是新手还是资深开发者,都能从中受益匪浅。
深入体验阿里云通义灵码:测试与实例展示
|
5月前
|
弹性计算 测试技术 持续交付
阿里云云效产品使用合集之如何进行自动化测试
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
弹性计算 安全 Linux
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
|
4月前
|
关系型数据库 MySQL 数据库
6-2|测试连接数据库的命令
6-2|测试连接数据库的命令
|
5月前
|
运维 Java Devops
阿里云云效操作报错合集之在流水线增加单元测试报错,是什么导致的
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。