弱龄寄事外,委怀在琴书。这篇文章主要讲述国产开源网络编程框架t-io的炸裂性能介绍之30W长连接并发相关的知识,希望能为你提供帮助。
t-io的性能用炸裂来形容,一点都毫不夸张,请各位大拿仔细阅读下面的内容,想你们心里有数。
具体请参考:??https://www.tiocloud.com/doc/tio/61??
准备工作
操作系统Ubuntu 12在/etc/sysctl.conf中添加如下配置:
文章图片
在/etc/security/limits.conf中添加如下配置:
文章图片
最后使用ulimit -an查询设置是否生效。
测试主机cpu:
文章图片
内存:
【国产开源网络编程框架t-io的炸裂性能介绍之30W长连接并发】
文章图片
客户端测试机用VMware创建12台虚拟机。机器性能就不列举了。每台虚拟机可以跑3W链接
1:t-io启动时内存占用率以及链接情况
文章图片
2:5W链接时内存占用情况
文章图片
3:10W链接时内存占用情况
文章图片
4:20W链接时内存占用情况
文章图片
5:30W链接时内存占用情况
文章图片
java进程统计情况
文章图片
cpu
文章图片
文章图片
jvm
文章图片
文章图片
2小时后观察内存变化情况如下图
文章图片
结论如下:
0-10万连接。内存变化较大。主要是由于内存初始化时jvm会占用一部分内存。
10万之后。每增加10万连接 内存占用率上升300M左右。
随着连接数增加可以发现cpu性能对连接数影响不大。
新生代内存与老生代内存占用率比较合理。
并发30W连接在2小时内。内存变化不明显。处于合理状态
根据以上数据可以推论 —-> 以8G内存(可使用内存为7.5G左右)为例:当内存占用率达到5G左右时足以支撑100W并发连接。
推荐阅读
- Veeam BR 常见问题
- Android技术分享| 自习室自定义View代替通知动画
- Java技术指南「编译器专题」深入分析探究“静态编译器”(JAVAIDEAECJ编译器)
- Spring Data JPA 参考文档二
- 一文搞懂Hive的存储格式与压缩格式
- MySQL 必知必会知识点总结
- Redis核心原理与实践--列表实现原理之ziplist
- 09 bootstrap快速搭建前端
- 使用golang解析yamljsonxml文件