swoft-cloud / swoft

🚀 PHP Microservice Full Coroutine Framework
https://swoft.org
Apache License 2.0
5.58k stars 786 forks source link

reload完以后,首次打开特别慢 #259

Closed seymourde closed 6 years ago

seymourde commented 6 years ago

执行完php bin/swoft reload 以后,在网页中首次打开会非常慢,以后就会很快

inhere commented 6 years ago

如果worker较多,你请求时服务器估计正在重启中

seymourde commented 6 years ago

但是我就默认起了一个worker。worker_num数量为1

seymourde commented 6 years ago

另外,我在程序中有报错,当我访问uri时候一直卡着不动,但是log中未找到报错信息。

huangzhhui commented 6 years ago

Reload完阻塞请求通常是由于Worker并未启动完成,通常是出于 Bean 扫描的阶段

seymourde commented 6 years ago

@huangzhhui 如果我在controller层面有语法错误,reload完以后,请求一直阻塞,但是未发现程序用error log,请问此种情况如何解决。

huangzhhui commented 6 years ago

Bean 扫描过程慢通常是由于你的磁盘性能不好,我猜测你是用了 Docker for Mac 或者其他虚拟机,在 Bean 扫描过程中会发现一些语法错误的

seymourde commented 6 years ago

嗯。我确实用的docker for mac 。

seymourde commented 6 years ago

确实在mac docker 中 每次更改代码的时候。reload成功后都要阻塞15s左右。作为开发确实相当痛苦那

huangzhhui commented 6 years ago

Mac 下建议使用原生环境安装使用,这是 Docker for Mac 的问题,目前我们没有办法解决

seymourde commented 6 years ago

好的,谢谢了

manyoubaby123 commented 6 years ago

windows下也是很慢的