首页
下载
文档
问答社区
视频
捐赠
源代码
AI 助理
赞助商
CRMEB
Apipost
腾讯云
微擎
禅道
51Talk
商业产品
Swoole AI 智能文档翻译器
Swoole-Compiler PHP 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
swoole framework 代码能够非阻塞运行吗?小白求教
用example文件夹中的app_server当做服务器, worker_num 设置为1, apps/controllers/page.php 的index控制器中加入sleep(2); function index() { sleep(2); return "default page"; } 用ab测试 -n100 -c10 http://192.168.12.142:8888/page/index 测试结果: Time taken for tests: 160.063 seconds Complete requests: 100 Failed requests: 0 Write errors: 0 Total transferred: 18800 bytes HTML transferred: 1200 bytes Requests per second: 0.62 [#/sec] (mean) Time per request: 16006.250 [ms] (mean) 这个是我代码问题,还是说swoole只在网络上实现了非阻塞功能,对于php代码单进程还是阻塞形式运行的? 如果代码是阻塞运行的,那worker_num这个数量需要设置的很大,才能和apache有相同的性能?
发布于8年前 · 0 次浏览 · 来自
提问
J
JunStar
用example文件夹中的app_server当做服务器, worker_num 设置为1, apps/controllers/page.php 的index控制器中加入sleep(2); function index() { sleep(2); return "default page"; } 用ab测试 -n100 -c10 http://192.168.12.142:8888/page/index 测试结果: Time taken for tests: 160.063 seconds Complete requests: 100 Failed requests: 0 Write errors: 0 Total transferred: 18800 bytes HTML transferred: 1200 bytes Requests per second: 0.62 [#/sec] (mean) Time per request: 16006.250 [ms] (mean) 这个是我代码问题,还是说swoole只在网络上实现了非阻塞功能,对于php代码单进程还是阻塞形式运行的? 如果代码是阻塞运行的,那worker_num这个数量需要设置的很大,才能和apache有相同的性能?
赞
0
分享
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
评论
2016-01-08
二
二龙
可以。参见swoole_framework中CometServer的实现。注意如果是时间控制不要用sleep,而是使用定时器。
赞
0
回复
微信公众号
热门内容
暂无回复的问答
- CodeGalaxy K3s 轻量集群节点之间如何实现负载均衡
- 关于openssl CURL WARNING swSSL_connect: SSL_connect(fd=69) failed. Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small[1|394]
- 多个模型如何进行事务异常回退?
- websocket开启wss报错
- 协程tcp服务器如何使用多进程?recv()方法接收信息,打印出来的pid一直是同一个。没用使用到多进程啊。