php - 选择哪个Websocket服务器?

标签 php mysql websocket memcached

我正在 ZF2 中开发一个大型 PHP 应用程序,我需要在这个应用程序中进行实时交互,所以我选择了 websocket。 我有 PHP、Mysql、Memcached。我需要一个 websocket 服务器。什么是最好的选择。 我的 websocket 服务器的要求:

  • 支持 mysql、memcached 和 gearman
  • 支持https连接,很重要
  • 可选地支持 IE(但如果有松动的好处,这并不重要)
  • 可扩展

我的问题是从 PHP( Spanner )websocket 服务器或基于 Node.js(socket.io)的服务器中进行选择。 我应该选择哪个?

如果我使用 PHP,我可以使用 PHP 代码和 ZF2 函数,很容易开发,但我没有非 html5 浏览器支持(我这里有 ssl 支持吗?)

如果我使用 socket.io 我有所有的浏览器支持和回退,但在这里我需要重新编写所有函数(在 js 中)以与 mysql、memcached 等一起工作...

最佳答案

WaterSpout 服务器声称提供 WebSocket 或长轮询连接: https://github.com/chrisnetonline/WaterSpout-Server

所以这可能是一个适用于所有浏览器的解决方案。

所有解决方案都是可扩展的。问题是真的;您希望多快开始考虑扩展?您什么时候想垂直扩展并向您的服务器添加额外的资源?你什么时候想添加另一台服务器(水平扩展)并处理这些服务器之间的同步连接和状态信息?恕我直言,您将使用 PHP 解决方案更快地执行此操作。

如果您主要想用 PHP 编写代码并且希望保持简单,那么我建议您使用 hosted realtime service作为您的应用程序堆栈的一部分。

一些相关的帖子(我写的):

关于php - 选择哪个Websocket服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18889997/

相关文章:

PHP curl 错误 : "Empty reply from server"

node.js - 使用WebSockets(ws)连接到Rcon

php - 通过公网IP地址连接MySQL数据库?

PHP foreach循环使用PDO将数据插入mysql仅插入第一行

php - MySQL Full-text search - 搜索短词

php - 验证多个文件输入mysql查询

websocket - Django channel 文件/图片上传

javascript - 将 node-v0.10.4 用于 websocket 代理时出现错误 'invalid data'

php - 如何在 Google App Engine 中传递 cron 参数?

javascript - 选择后立即上传图片