自定义了一个通讯协议,在Gateway中使用,但是发生一个问题,请指教:
看上去协议工作正常,而且相关消息处理过程也工作正常
客户端会不停的向服务器发送心跳包,较长一段时间后,出现了“failedto open stream: Too many open files ”的错误警告
此时只有一个连接的
没有数据库或其他缓存操作
不知道,出现这种情况,我应该从什么地方开始找问题
目前用workerman/http-client来异步请求,折腾了一段时间发现虽然可以异步请求,但还是不能满足我的需求。workerman/http-client只能是get或者是post其他服务器,现在服务器的fm框架也可以多进程呀,如果我把服务器的进程数限制为1,那么还是会出现堵塞。测试步骤:
设置了三个请求 a b c
a sleep(10)
b sleep(5)
c 立即输出
服务器的子进程设置为1
那么就开始闭塞了,依次出来的是 a b c 。异步或者协程 GO java 是可以做到不创建子进程 直接按实际请求时间出来的 也就是 c b a 这个顺序
大佬们 有没有办法没?我是跟thinkphp 5 集成用的