1

我有 200 多个房间,人们可以在我的网站上访问,只是为了通过 viewroom.php?id=xx 观看发布的消息(他们不能说话或写字或其他什么,只能看到)

另一方面,我有人使用移动应用程序向特定房间发送消息(仅发送),该应用程序在我的服务器中调用文件 sendmes.php?room=xx ,此时我已经全部工作但没有实时刷新,我想知道最好的系统和尽可能轻的服务器负载,可以通过 sendmes.php 发送到 viewroom.php 没有沉重的 lops 和那个

我尝试使用 Ajax 和长时间超时,但这种方式迫使我对 mysql 或文件进行循环,我认为这是一种高服务器负载方式

4

2 回答 2

0

我强烈建议更改系统的后端架构。

使用Socket.IO查看Node.js。 _ 它是一个简单的 Web Sockets 包装器(如果没有浏览器支持,还有长轮询 AJAX),使整个过程变得简单。让您的客户将所有消息发送到您的 Node 实例,然后让您的 Node 应用程序写入您的数据库以进行归档。

于 2012-06-24T16:33:52.367 回答
0

如果您要处理消息,我建议使用已建立的消息系统——例如RabbitMQ(我们实际上在我们的一个项目中使用它并取得了巨大成功)——而不是编写自己的逻辑来存储和排队它们.

这样,您唯一需要编写的是一个轻量级的“服务器推送”脚本——它将查询消息传递子系统以获取传入消息,并将它们路由到特定的房间/用户。

于 2012-06-24T16:35:53.067 回答