我正在尝试使用Socket.IO Websocket构建一个带有实时更新的日历。我设法让Socket.IO服务器在端口8181上运行,但我的calendar.php是通过端口80上的apache管理的。
我要做的是使用带有apache的calendar.php,同时连接到端口8181上的Socket.IO服务器(或者用apache绑定到端口80,但这看起来很复杂,当我有人在日历中编辑了一个事件时,我尝试回代理但没有工作)接收更新。我的事件存储在SQL数据库中。
那么有没有办法在端口808上的apache服务的php页面中的端口8181上使用Socket.IO?
谢谢!
答案 0 :(得分:1)
我不确定我理解你的问题。一旦页面由PHP在端口80上提供服务,您就可以通过最简单的设置连接到8181上的socket.io服务器。
从那时起,您不需要再次与php交互,因为您可能正在向socket.io服务器发送消息以进行处理。
对于负载均衡socket.io,我认为你可以使用HAProxy,我认为LearnBoost也有替代Github。我实际上还没有使用我的应用程序这一步,所以我不能在这里给出太多信息。
但是,你的socket.io服务器应该接收,处理和发送消息。如果你有多个socket.io实例正在运行,你也可以使用redis for Pub / Sub。
有一个异步MySQL驱动程序的节点模块,允许您直接与数据库进行交互。我在我的应用程序中使用MongoDb,所以我从未使用过MySQL模块。
我想或者,您可以将您的PHP服务器用作Web服务,并且您的socket.io服务器可以与它进行交互,但我想这样做会很慢。
希望能够解决问题。似乎您的设置已经在开发环境中工作。