1核2G 并发 2核4G 并发 、服务器并发测试

1核2G 服务器能抗多少并发 ,2核4G 服务器能抗多少并发, 上网一直没找到合适的答案,局限于经济问题,一直到今天忍痛花了几百大洋临时买了几台服务器才得以实践。

  • 压测工具 :ab工具
    注意:
    1、压测环境服务器性能要足够好,且带宽 >= 被测试服务器带宽
    2、带宽和返回的数据关系:服务器带宽1M实际对应 1024KB / 8=128KB/S
    3、使用php输出一串字符串,整个返回结果Size=1.1KB

$temp = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
$str = '';
for ($i = 0; $i < 28; $i++) {
    $str .= $temp;
}
echo json_encode(['code' => 0, 'date' => date('Y-m-d H:i:s'), 'str' => $str]);

输出结果,

{"code":0,"date":"2020-11-11 14:54:27","str":"ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"}

4.测试框架:原生php、laravel5.6、thinkphp5.0

测试结果

1和2G 1M服务器

框架 QPS CPU使用率
原生php 105 3%
thinkphp5.0 105 70%
laravel5.6 23 90%

2和4G 4M服务器 (可能这台服务器我装了很多服务,测试结果不理想)

框架 QPS CPU使用率
原生php 600 3%
thinkphp5.0 140 50%
laravel5.6 27 90%

2和8G 5M服务器

框架 QPS CPU使用率
原生php 650 3%
thinkphp5.0 650 47%
laravel5.6未开启opcache 73 90%
laravel5.6开启opcache 737 20%

压测过程截图

  • 1核2G 1M服务器
    原生php并发105左右。
    1核2G 并发 2核4G 并发 、服务器并发测试_第1张图片
    thinkphp5.0框架
    并发量106,CPU使用率到达70%,受限于带宽,可以达到更高的并发。
    1核2G 并发 2核4G 并发 、服务器并发测试_第2张图片

并发laravel5.6框架
并发量 20左右,并且服务器CPU使用率达到90%
1核2G 并发 2核4G 并发 、服务器并发测试_第3张图片

  • 2核4G 4M 服务器

原生php
并发600左右
1核2G 并发 2核4G 并发 、服务器并发测试_第4张图片

tinkphp5.0框架
并发140,CPU使用率50%
1核2G 并发 2核4G 并发 、服务器并发测试_第5张图片

laravel5.6框架
并发27,CPU90%
1核2G 并发 2核4G 并发 、服务器并发测试_第6张图片

  • 2核8G 5M 服务器
    thinkphp5.0框架。未开启opcache
    并发650左右,CPU 47%,带宽不够,无法使CPU使用率到达90%
    1核2G 并发 2核4G 并发 、服务器并发测试_第7张图片

laravel5.6框架。未开启opcache
并发73,CPU使用达到90%,CPU不够用
1核2G 并发 2核4G 并发 、服务器并发测试_第8张图片

laravel5.6框架。开启opcache
并发737,CPU使用率20%,5M带宽不够用
1核2G 并发 2核4G 并发 、服务器并发测试_第9张图片

总结:服务器并发性能大部分情况受限于带宽,在带宽足够大的情况下,如果CPU使用达到50% - 80%以上,需要拓展服务器内存。

以上为花两三小时的测试结果,测试方法并不科学,且能力有限,目的是对服务器的并发性能进行简单了解。如果发现测试结果有较大出入,欢迎提出,改日买服务器再测。

你可能感兴趣的:(php,运维,并发)