现在有个需求,就是当数据库中的数据发生变化,然后我的 Client 会发送变化了的数据到 server 端,我想问现在 Ruby 有没有这样的 gem 包可以 watch 数据库的改变,或者有什么好的办法来做这件事情。大家有什么意见~
这种需求用 Redis 的 Pub/Sub 更合适。 http://redis.io/topics/pubsub
如果不想换数据库的话,只能轮询了,如果数据量大,请求频繁的话,轮询性能很低的。
#1 楼 @kgen 我们现在没有使用 Redis,换数据库不太可能,我们现在的想法是,想使用 SQS 来解决这个问题,轮询是在是太影响性能了。
可以考虑使用 https://github.com/numtel/meteor-mysql#event-types ,看看是不是有帮助。
#3 楼 @gazeldx 现在决定使用亚马逊的 SQS 了,谢谢各位
在 App 层中 Rails 有一个 observers 功能,Rails4.0 后成为了一个 Gem https://github.com/rails/rails-observers https://rubygems.org/gems/rails-observers
在数据库层,我也不知道有什么办法。