使用socket.io node.js和传入消息的通知系统的体系结构实现和设计

时间:2011-08-24 22:03:52

标签: php mysql node.js comet socket.io

免责声明

  • 我之前没有使用node.js
  • 我之前没有使用过socket.io

我正在考虑实施Google Plus,Facebook,StackOverflow样式通知系统。我不是一个没有经验的开发人员,最终我会想到这一点,但我只是想向正确的方向发展。

我想要的是浏览我网站的用户在收到新邮件时在浏览会话期间收到通知。

目前,我的所有消息都存储在一个表中。

  |  id    | messageSubject   | messageBody     | hasRead   | readDate   | sentDate   | sentToUser  | sentFromUser  |
  |   1    |   HelloWorld     | Nada            |   0       | `null`     | `null      |      1      |      10       |

现在,我的所有消息都是从数十个的不同来源中检索到的。

  • 可以通过第三方的API输入消息
  • 从发送网格中提取消息
  • 可以通过私人消息控制器发送消息。
  • Etc等

我想要的是有办法在收到新邮件时通知用户。我很高兴以任何方式重构我的代码,这使我可以在收到插入消息时通知我的node.js,如果这是我需要做的。

但我不太确定从哪里开始。

我的问题是我的所有消息都通过几十种不同的来源输入到mysql中,我的Insert语句涉及很多领域。所以我只是不知道最好的方法。

感谢。

1 个答案:

答案 0 :(得分:14)

尝试查看演示文稿Why databases suck for messaging,这就是为什么不应该使用MySQL等数据库进行消息传递。 Messaging和通知系统适用于Event Driven Architecture,我建议观看this演示文稿或从here了解有关此主题的更多信息,以便了解有关活动的更多信息驱动“生态系统”。