我得到了一個RubyOnRails應用程序,它使用Node.js/Socket.io服務器將交易信息推送到所有連接的客戶端。無論何時執行交易,客戶端屏幕都會根據上次交易的信息進行更新。如何使用Redis/Node/Rails延遲和合並pub/sub
隨着交易頻率的增加,每隔一秒甚至更頻繁發生一次更新就會變得相當煩人。我正在尋找一種方法來處理僅將最新更新推送到客戶端。每5秒一次,即如果沒有交易發生,則不會推送任何東西。
我至今是: 我通過從Rails應用程序推交易信息,以Redis的:
REDIS.publish('tradeupdate', .....)
和節點服務器確實是這樣的:
cli_sub.subscribe("tradeupdate");
cli_sub.on("message",function(channel,message) {
io.sockets.emit('ablv', message);
});
和客戶端那麼
socket.on('ablv', function (data) {
obj = JSON.parse(data);
.....
});
目標是隻有最後一條消息w在給定的時期(例如, 5秒)從Rails發送到Node或從Node發送到客戶端。
爲什麼這是一個downvote? – KKK
這是用於Vircurex還是Cryptostocks? – apscience
Vircurex,一旦節流和Chrome內存泄漏問題得到解決。 – KKK