VMess 协议测试

VMess 协议测试

测试内容

添加10000名用户,模拟大量用户同时使用VMess 协议的情况

测试说明

服务端同时支持VMess+MD5+VMessAEAD认证,客户端使用VMessAEAD进行连接,websocket传输模式,10000名用户,alterId 为0

测试环境

Ubuntu 20.04,4核8G,无 swap

测试方法

客户端->代理程序->服务端(模拟网站)

  1. 使用客户端通过代理建立3000条连接至服务端,客户端在每条连接中每2秒随机发送1KB~16KB的数据包至服务端,服务端在每条连接中每1秒随机发送1KB~16KB的数据包至客户端

  2. 每条连接随机持续30~120秒后关闭,每关闭一条连接后会立刻建立新连接,保持正在运行的连接总数不变

  3. 保持运行10分钟,再静置5分钟,继续运行5分钟,最后静置10分钟,总共测试30分钟,记录 CPU、内存、连接数、网速情况

v2ray 监控图

CPU 间歇上升是因为 VMess 协议每隔 10 秒会为所有用户生成新的验证信息,需要占用 CPU,VMess 协议特性,以下 xray 和 soga 也是同理

xray 监控图

soga 监控图

测试数据汇总

程序
最高内存占用
结束时内存占用
高峰时段 CPU 平均占用率
闲置时段 CPU 平均占用率

v2ray-core(v4.45.2),设置16KB连接缓存

1079MB

565MB

33.62%

1.45%

xray-core(v1.5.9),设置16KB连接缓存

1084MB

553MB

31.74%

1.43%

soga(v2.7.7),默认16KB连接缓存,未开启v2ray_reduce_memory,开启后内存可更低

604MB

276MB

21.25%

1.58%

最后更新于

这有帮助吗?