PHP:使用Golang来处理websocket连接

Nic*_*DIA 5 php go websocket

我有一个相当大的Web应用程序构建与SproutCore和PHP作为后端.我现在想要的是使用websockets实时更新我的​​客户端应用程序.据我所知,PHP处理持久连接真的很糟糕.所以我一直在想我可以使用Go来处理websockets连接,并在每次收到请求时调用我的PHP脚本(这个似乎可以实现).

所以我的第一个问题是,你们认为这是一个好主意(而且一个可行的想法,我还没有找到人们这样做)或者我应该坚持使用PHP?

如果我使用Go来处理websockets连接,我也一直在想我可以逐步从PHP转移到只使用Go(因为它比PHP快得多).如果我这样做,我将必须能够从PHP调用一些Go包.可以用PHP exec函数完成吗?有没有更好的办法 ?再说一遍,这是一个好主意吗?

Dan*_*iel 9

Go非常适合websocket服务器.我已经在Go中构建了websocket服务器,并对它的运行方式非常满意.我有一个服务每月在一个Go websocket服务器上处理300k用户,它几乎不使用Amazon AWS微实例的1%CPU.不能更快乐.

Websockets确实需要事件驱动的框架,如Go和Node.js,以便最大化服务器资源.像PHP这样的分叉Web进程比事件驱动的框架消耗更多的资源.

如果你需要在某个时候从PHP调用Go,我建议使用API​​调用.虽然exec也会奏效.