Scala + Play + Akka。是否需要Backbone.js?

时间:2012-08-04 07:04:50

标签: javascript postgresql scala google-chrome-extension redis

我的后端在Postgres。我正在使用Scala来构建它的API。

每当数据库发生变化时,我都希望通知我的Chrome扩展程序。我有几个问题:

  1. 我应该在这里实施websockets还是进行长时间轮询?
  2. 如果网络套接字,有什么好的例子,我如何使用scala + play + Akka和javascript做到这一点?
  3. 我相信我要实现一种称为观察者模式的东西,如果数据有任何变化,它会通知我的chrome扩展。是否有任何其他模式我应该遵循以最小的DB开头完成这样的事情。
  4. 我应该使用Redis或RabbitMQ来处理这个特定的通知部分吗?

1 个答案:

答案 0 :(得分:2)

1)我会使用http://socket.io/

3)这是一个有趣的问题。观察者模式通常用于前端。我建议你查看这篇文章http://addyosmani.com/largescalejavascript/。它帮助我更好地构建了我的应用程序。它基本上是Pub / Sub模式与EventBroker / Mediator之间。将发布者和订阅者解耦是理想的。您可以将EventBroker放在应用程序命名空间中。通过这种方式,您可以从模块访问消息总线,而无需始终通过模块传递参考。

4)我们在网站上使用redis进行实时/时间通知,这些通知具有类似pinterest的功能。我对redis的表现印象深刻。