Rumah >pembangunan bahagian belakang >tutorial php >php长连接是否必须使用代理模块去做

php长连接是否必须使用代理模块去做

WBOY
WBOYasal
2016-06-06 20:50:331317semak imbas

RT 必须自己做个代理模块 还是用php直接可以做
有没人了解?
大家讨论下

回复内容:

RT 必须自己做个代理模块 还是用php直接可以做
有没人了解?
大家讨论下

最近我也遇到相同的问题,在并发较高的时候,如果没有长连接,新建网络连接会造成大量的资源浪费。
当PHP的运行环境为Nginx+PHP-FPM时,用pconnect会造成已经建立的连接不会释放的同时又不断的新建连接,最终后果是很快消耗掉所有可用的网络IO。
我考虑可以使用mysql-proxy连接池,但是同时也出现了问题,不知道是不是ro-pooling脚本的问题,在使用过程中产生大量的1105错误,大概意思是backends down之类的错误,调整脚本也没有效果。
后来又研究sqlrelay,大概在05、06年时我使用过sqlrelay,当时给我留下的印象并不好,需要大量改造程序不说,还有事务错误的问题,所以这次没有优先考虑sqlrelay,不过今天看到从上次使用以来发布过不少版本,而且还可以做到不需改造直接使用,所以打算做一下测试看。
目前还没有找到更好的解决方案,大家讨论一下哈。

不知道是不是正确的理解了你的意思。

PHP的执行模式决定了对长连接的不适合。
我理解的你是需要web即时信息交互。sf现在貌似是每10s一次请求。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn