hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - PHP框架 - Workerman - 正文 请牢记本站网址www.sosophp.cn

workerman怎样完成高并发【workerman】,workerman

2019-12-05Workerman搜搜PHP网61°c
A+ A-

并发观点太隐约,这里以两种可以量化的目标并发衔接数和并发请求数来申明。

并发衔接数是指服务器当前时候一共保持了若干TCP衔接,而这些衔接上是不是有数据通讯并不关注。 (引荐进修: workerman教程)

比方一台音讯推送服务器上也许保持了百万的装备衔接,因为衔接上很少有数据通讯,所以这台服务器上负载也许险些为0,只需内存充足,还可以继承接收衔接。

并发请求数平常用QPS(服务器每秒处置惩罚若干请求)来权衡,而当前时候服务器上有若干个tcp衔接并不非常关注。比方一台服务器只要10个客户端衔接,每一个客户端衔接上每秒有1W个请求,那末请求服务端须要最少能支撑10*1W=10W每秒的吞吐量(QPS)。

假定10W吞吐量每秒是这台服务器的极限,假如每一个客户端每秒发送1个请求给服务端,那末这台服务器可以支撑10W个客户端。

并发衔接数受限于服务器内存,平常24G内存workerman服务器可以支撑也许120W并发衔接。

并发请求数受限于服务器cpu处置惩罚才能,一台24核workerman服务器可以到达45W每秒的吞吐量(QPS),现实值依据营业复杂度以及代码质量有所变化。

注重

高并发场景必需装置event或许libevent扩大。别的须要优化linux内核,尤其是历程翻开文件数限定。

压测数据

这里仅供应workerman压测的QPS数据参考。

###测试环境:

体系:debian 6.0 64位

内存:64G

cpu:Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz (2颗物理cpu,6中心,2线程)

Workerman:开启200个Benchark历程

压测剧本:benchmark

营业:发送并返回hello字符串

###一般PHP(版本5.3.10)压测

短衔接(每次请求完成后封闭衔接,下次请求建立新的衔接):

前提: 压测剧本开500个并发线程模仿500个并发用户,每一个线程衔接Workerman 10W次,每次衔接发送1个请求

效果: 吞吐量:2.3W/S , cpu利用率:36%

长衔接(每次请求后不封闭衔接,下次请求继承复用这个衔接):

前提: 压测剧本开2000个并发线程模仿2000个并发用户,每一个线程衔接Workerman 1次,每一个衔接发送10W请求

效果: 吞吐量:36.7W/S , cpu利用率:69%

内存:每一个历程内存稳定在6444K,无内存走漏

以上是php5.3版本压测数据,假如用php7,机能会再次提拔40%摆布。

###HHVM环境压测

短衔接(每次请求完成后封闭衔接,下次请求建立新的衔接):

前提: 压测剧本开1000个并发线程模仿1000个并发用户,每一个线程衔接Workerman 10W次,每次衔接发送1个请求

效果: 吞吐量:3.5W/S , cpu利用率:35%

长衔接(每次请求后不封闭衔接,下次请求继承复用这个衔接):

前提: 压测剧本开6000个并发线程模仿6000个并发用户,每一个线程衔接Workerman 1次,每一个衔接发送10W请求

效果: 吞吐量:45W/S , cpu利用率:67%

内存:HHVM环境每一个历程内存稳定在46M,无内存走漏

以上就是workerman怎样完成高并发的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
workerman怎样完成高并发【workerman】,workerman

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签: