场景描述:client(单片机)---sendMQ--->MQServer---Received--->php脚本(业务+DB)文字说明:就是简单的一种MQ应用场景问题描述:(一说到这就想骂人)暂且80个client(听说后期5000的量),4个PHP脚本处理进程才应付得过来。正常情况下,消息量在2500条/分钟左右。特殊情况下估计要翻3倍,也就是7500/分钟。问题也就出现在特殊情况下,一旦脚本处理能力跟不上之后,基本上后面很难再更上去了,因为消息只会积累的更多。请教:姑且先不管描述的问题,毕竟需要优化的地方还太多。假如不考虑接收MQ速率的影响,一条消息对应一组CURD的操作,单个php脚本在Cli下的处理能力有多快,最好能给个大概的量化值。PHP在cli下运行,受到哪些PHP配置参数的影响增加多个PHP脚本,肯定不可能无限增加。重中之重:授人以鱼不如授人以渔。php进程相关的知识点哪里有好的文档
2 回答
智慧大石
TA贡献1946条经验 获得超3个赞
不考虑IO的话,只要不写一些作死的逻辑,php的在cli的处理能力基本不需要担心不够用,但是存在IO的情况下,瓶颈大多都是在这些IO操作和等待上,不好给你的数值。php的配置一般改动也不会太多,cli下运行主要注意下可以使用的最大内存。增加多个php脚本是可行的,监控下CPU和内存的使用就可以了官方文档有简要描述,但是看你的这个场景,你不考虑使用swoole或者workerman这类异步、并行、高性能网络通信引擎吗?
冉冉说
TA贡献1877条经验 获得超1个赞
参考性能:laravel队列(cli方式)+Rabbitmq,13W数据,DB业务操作,78个进程(36*2台机器),总耗时20秒单台硬件配置:CPU:32核;内存:64G
添加回答
举报
0/150
提交
取消