【发布时间】:2012-08-02 03:32:44
【问题描述】:
我的后端在 Postgres 中。我正在使用 Scala 来构建它的 API。
每当数据库发生变化时,我都希望我的 chrome 扩展能够得到通知。我对此有几个问题:
- 我应该在这里实现 websocket 还是进行长轮询?
- 如果是 web-sockets,有没有什么好的例子说明我如何使用 scala + play + Akka 和 javascript 来做到这一点?
- 我相信我必须实现一种称为观察者模式的东西,如果数据有任何变化,它会通知我的 chrome 扩展。我应该遵循任何其他模式来以最小的数据库开销完成这样的事情。
- 我应该使用 Redis 还是 RabbitMQ 来处理这个特定的通知部分?
【问题讨论】:
-
Play 随几个示例应用程序一起分发。我发现“WebSocket Chat”示例程序对学习处理 Scala/Play/Akka/JavaScript/WebSockets 非常有帮助。
-
如果您的通知不是“实时”(=每隔几秒),您可能需要考虑只进行“拉动”并使用新状态更新浏览器操作按钮每 X 分钟/小时/天。
-
拉取通知将是实时的。因此问题。
标签: javascript postgresql scala google-chrome-extension redis