在共享主机服务器发送事件(SSE)或长轮询上实现实时通知的最佳方法是什么?
我看了一个视频说SSE不适合共享主机,Apache服务器并不适合PHP和MysqL.
我只是想知道哪种技术更适合长轮询或SSE在共享服务器上进行实时通知,我在godaddy.com上有我的服务器
请提供解释推荐技术的良好链接.
解决方法:
每个SSE连接都保持打开专用套接字.如果您使用的是Apache和PHP,那么内存中也会有一个实例.他们坐在那里,占用内存,即使你从未向客户发送任何数据.
共享主机的经济性依赖于大多数用户在大多数时间没有加载服务器的想法.如果你一直在内存中开始持有apache进程,那么你的ISP将会绕过这些进程.例如,BlueHost似乎有一个脚本可以自动搜索并破坏长时间运行的进程;我想象GoDaddy也一样.
除此之外,ISP可能会在您的网站前放置一个缓存代理服务器,这会干扰SSE和长时间轮询. (在这种情况下,您可能能够向代理发送特殊标头以告知它不要.)
因此,没有技术原因SSE和长轮询不能与共享主机一起使用,但实际上您的ISP会试图阻止您.
对于你问题的其他部分,SSE和长轮询基本相同; SSE为您提供了内置的JavaScript API,并且效率更高.在用户的浏览器支持时使用SSE,否则编写自己的长轮询例程.