chaz6chez

Results 3 issues of chaz6chez

不知道swow是否支持fork操作? 如果fork后,所有的进程是否共用一个协程的调度执行线程? 在我的概念里,PHP自身进程的存在单线程的工作线程,而swow提供了另一个线程+调度器来hook PHP工作线程的一些协程操作,底层是通过libcat来提供事件循环的;libcat基于libuv,在我的概念里是支持fork和多线程的。 如果swow支持fork,那么我可以用sidecar的思想思考整个模型,我fork出来的每一个进程都将包含一个PHP工作线程+swow调度线程,那么实际上这样一个模型就很类似golang的GPM模型,尤其是在systemcall部分,因为golang的systemcall部分协程是在同一条P上进行执行的,并不会被多个P调度执行。 那么如果按照这样最乐观的情况考虑,PHP就可以实现一个类似GPM模型的多进程模型的程序。

discussion

## 原理 1. 使用workerman自带的Timer对长轮询请求进行处理 2. onMessage忽略来自LongPollingResponse的send处理 ## 描述 1. 增加了LongPollingResponse - LongPollingResponse接收request对象参数及wait参数 - wait参数用于控制长轮询等待时长 3. 修改了App.php onMessage、send部分 ## 使用 1. 控制器返回LongPollingResponse对象即可 ``` public function test(Request $request): Response { return (new...

目前只做了 1. command的基础使用的测试 2. publish的基础测试

documentation
enhancement