webman项目每次重启后或者长时间没有请求后的第一次请求等待时间平均为5s,查看了类似的问题 https://www.workerman.net/q/8539 但是项目目录设置并未将非Php文件放入app目录中,目录结构如下 使用单个进程启动服务,使用dtrace追踪如下, php start.php status如下 请问有无遇见这种情况的?
WSL2+宿主机目录映射? 提一句, WSL2的话,直接把代码放子系统里,不要通过挂载宿主机目录的方式,因为IO性能很差
不是,mac系统通过正常的转发配置
mac不了解,首次那么慢基本都是磁盘IO原因
应该不是,传统php-fpm框架每次都要加载,但是也没这么长时间,肯定是有问题的
从截图看不出什么问题,自己打下日志吧,看下哪里慢,一层一层的找。 vendor/workerman/webman-framework/src/App.php 里onMessage方法
自己测试发现,消耗的时间在onMessage之前
出现这种情况的场景是重启后第一次访问,或者长时间无请求后
vendor/workerman/webman-framework/src/support/App.php 里onWorkerStart是进程启动后的一些操作
调试发现onWorkerStart启动很快,耗时时间在onWorkerStart与onMessage之间,该如何定位问题呢?
弄个空的项目试下是否有问题,没有问题的话然后慢慢把你现在项目的代码一点一点挪过去,定位下是哪块问题。
好的
解决了吗,我这边也出现相同的问题
还没来得及排查,个人觉得排查方向应该是在新安装的插件上
你那边有没有排查出问题?我发现每一个进程第一次请求都比较慢,本地测试等待一段时间无访问的话,请求分配到另外一个未接收过请求的进程,就会出现等待时间长的问题
我在linux服务器上没有这个问题
本机开发环境使用docker会有
相同环境,配置高的就没这个问题,8核cpu,我的是4核
我的服务器是1核的,也没有这个问题
WSL2+宿主机目录映射?
提一句, WSL2的话,直接把代码放子系统里,不要通过挂载宿主机目录的方式,因为IO性能很差
不是,mac系统通过正常的转发配置
mac不了解,首次那么慢基本都是磁盘IO原因
应该不是,传统php-fpm框架每次都要加载,但是也没这么长时间,肯定是有问题的
从截图看不出什么问题,自己打下日志吧,看下哪里慢,一层一层的找。
vendor/workerman/webman-framework/src/App.php 里onMessage方法
自己测试发现,消耗的时间在onMessage之前
出现这种情况的场景是重启后第一次访问,或者长时间无请求后
vendor/workerman/webman-framework/src/support/App.php 里onWorkerStart是进程启动后的一些操作
调试发现onWorkerStart启动很快,耗时时间在onWorkerStart与onMessage之间,该如何定位问题呢?
弄个空的项目试下是否有问题,没有问题的话然后慢慢把你现在项目的代码一点一点挪过去,定位下是哪块问题。
好的
解决了吗,我这边也出现相同的问题
还没来得及排查,个人觉得排查方向应该是在新安装的插件上
你那边有没有排查出问题?我发现每一个进程第一次请求都比较慢,本地测试等待一段时间无访问的话,请求分配到另外一个未接收过请求的进程,就会出现等待时间长的问题
我在linux服务器上没有这个问题
本机开发环境使用docker会有
相同环境,配置高的就没这个问题,8核cpu,我的是4核
我的服务器是1核的,也没有这个问题