6

我目前正在使用 Symfony2 编写一个非常标准的 Apache/PHP/mySQL 网站,并考虑使用 Node 和 socket.io 来满足特殊需求:通知栏。没什么太花哨的,当您收到新朋友请求、新邮件时,通知会亮起……

我不太喜欢定期从 ajax 循环请求我的数据库;我希望此功能具有完全可扩展性并具有最小的占用空间。

因此,我正在考虑在我的数据库服务器端发出一个定期请求,将我在 Node 中的打开套接字列表提供给每个相关用户的推送通知。

我走对了吗?

干杯

4

1 回答 1

3

您肯定走在正确的轨道上,但我建议将通知内容放在您的应用程序中,而不是轮询您的数据库。以好友请求为例,在好友请求发送时执行:

function send_friend_request($from, $to) {
    $mysqli->whatever you do with that;
    send_notification($to, 'You have a friend request!');
}

wheresend_notification是一种向您的 nodejs 服务器发送 POST 请求的方法。您的 nodejs 服务器接收 POST 并将消息转发给正在收听的任何内容$to

于 2013-07-24T18:16:08.193 回答