内容简介:第 86 篇文章这是关于 Swoole 入门学习的第十篇文章:压测 swoole_收到读者提问 “使用 Swoole 开发的群聊功能,想知道并发情况,也就是想压测下 QPS,一直未找到方法 ...”
第 86 篇文章
这是关于 Swoole 入门学习的第十篇文章:压测 swoole_ websocket_ server 性能。
概述
收到读者提问 “使用 Swoole 开发的群聊功能,想知道并发情况,也就是想压测下 QPS,一直未找到方法 ...”
对 swoole_ http_ server 压测,咱们可以使用 Apache 的 ab 命令。
对 swoole_ websocket_ server 压测,使用 ab 命令是不能压测的,我从网上一直也没找到合适的方法,看官方提供的代码 benchmark/async.php
中,使用的异步模块 swoole\http\client
方法进行压测的,但在 Swoole 4.3 版本就移除了异步模块,让使用 Coroutine
协程模块。
在本地我用 Coroutine
协程实现了一下, 测的差不多的时候,一直不确定是否正确,就在 segmentfault 发了个提问,没想到韩老师回答了,'如果的如果'老师也回答了,非常感谢两位老师的答案,然后整理出文章分享给大家。
测试机
Mac 上安装的 Parallels Desktop 虚拟机
系统:Ubuntu 16.04.3 LTS
内存:
-
数量:1
-
核数:2
CPU:
-
数量:1
-
大小:2G
Server 代码
压测脚本
压测结果
以上是压测结果,供参考。
小结
通过这个压测结果,表明 Swoole 的执行效率是杠杠的!
当然还有一些参数是可以调优的,比如:worker_ num、max_ request、task_ worker_ num 等。
在真实的业务场景中,肯定会有逻辑处理,也会使用到 MySQL 、Redis。
那么问题来了,前两篇文章已经分享了,Swoole Redis 连接池、Swoole MySQL 连接池,感兴趣的同学,可以使用上两种连接池,然后再进行压测。
不知不觉,Swoole 入门文章已经写了 10 篇了,非常感谢大家的捧场,真心希望能够对 Swoole 入门学习的同学,有点帮助。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 性能优化第一课:性能指标
- 【前端性能优化】vue性能优化
- Golang 性能测试 (2) 性能分析
- 【前端性能优化】02--vue性能优化
- Java性能 -- 性能调优标准
- Java性能 -- 性能调优策略
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First HTML and CSS
Elisabeth Robson、Eric Freeman / O'Reilly Media / 2012-9-8 / USD 39.99
Tired of reading HTML books that only make sense after you're an expert? Then it's about time you picked up Head First HTML and really learned HTML. You want to learn HTML so you can finally create th......一起来看看 《Head First HTML and CSS》 这本书的介绍吧!