我开始使用http://reactphp.org/处理HTTP请求。
我运行多个在不同端口上运行的反应工作者,然后使用Nginx作为负载平衡来处理请求。 喜欢这个
upstream backend { server 127.0.0.1:13300; server 127.0.0.1:13301; ..... }
一切正常,如预期。
问题是如何获得reactphp进程状态的统计信息。 当前有多less个进程处于空闲状态(等待新请求),请求中有多less进程正在工作等等。
有没有现成的解决方法?
或者想法如何手工处理过程统计。
示例 – locking写入某些caching进程状态。 当启动请求进程 – 增加处理进程数时,完成请求 – 增加空闲进程数。
最后一次我有一组工作线程,我在MySQL DB中设置了一些表。
工作人员是每个线程注册一个行(给它一个ID)的地方。 线程会锁定它的行并保持状态列。
还有一个指令堆栈。 如果工人看到了身份证件,而文字“退出”,则会关闭并退出。 最后一件事是删除它的行。 设置状态退出也将工作。
我也做了一个状态报告和管理页面,我可以发布命令并为我的工作线程设置任务。
这将允许你看到每个线程正在做什么,并获得空闲线程的计数。
空闲线程:
SELECT count(id) AS threads WHERE status='idle';
线程状态计数:
SELECT status, count(id) AS threads GROUP BY status;