当前位置:   NODEJS > 正文

使用Redis在PHP和socket.io/node.js之间进行通信

php,redis,node.js,socket.io,apache,nginx,mysql,服务器,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具,前端开发工具,开发人员工具,站长工具

我在Apache上构建并运行了一个PHP应用程序,使用Nginx作为反向代理来提供静态资源.

我还安装了Redis,我用它来存储每个用户活动流的活动ID.该活动被写入MySQL数据库,然后Redis将活动ID推送到每个用户流中.当用户收到他/她的活动流时,应用程序首先从Redis检索活动ID的用户列表,然后通过MySQL IN()查询获取实际活动数据.

这一切都很好,但我想开始为这个设置添加实时功能.我希望能够将这些事件直接推送到用户浏览器并添加常规实时通知.

为此,我已经使用socket.io安装了node.js. 我正确启动并运行了socket.io服务器,并在页面加载时自动连接客户端.

我正在努力的地方是了解如何从我的PHP应用程序中向socket.io发布消息.由于PHP和node.js无法直接通信,我的理解是我最好将Redis用作中间人,因为我已经安装并启动并运行它.但是我不知道该怎么做.

我需要的是从PHP发送通知到Redis然后再发送到socket.io以便将其推送到相关客户端的过程描述(任何代码示例都非常有用).

另外,我不明白socket.io如何知道要发送到哪个客户端.我如何传递这些信息并保持一致?这甚至是必要的吗?我是否需要在Redis中存储我的PHP会话并让socket.io在用户连接时收集数据?或者还有另一种方式吗?

提前致谢.

请注意:我的PHP SESSION数据当前已保存到磁盘.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/NODEJS/detail/11870
推荐阅读
相关标签
  

闽ICP备14008679号