回答
我們使用Redis的上Trello的臨時數據,我們會好起來的與失去。我們不會將Redis中的數據保存到磁盤中,因此我們只使用它allkeys-lru,因此我們只能存儲可隨時被踢出的內容,而且對用戶造成極小的不便(例如暫時看到不正確的用戶狀態)。這就是說,我們給它5倍以上的空間來存儲它的實際工作集,並從10個按鍵中選擇過期時間,所以我們真的從來沒有看到我們正在使用的任何東西被踢出去。
這是我們的pubsub服務器。當用戶對板或卡做某些事情時,我們希望發送一個帶有增量的消息給訂閱了更改對象的所有WebSocket連接的客戶端,這樣我們所有的Node進程都訂閱了一個傳播的pubsub頻道這些消息,並將其傳播給適當的許可和訂閱的websockets。
我們使用它來支持socket.io,但由於我們只使用websockets,並且因爲socket.io是too chatty需要縮放,就像我們目前需要的那樣,我們有一個補丁可以禁用所有的這是我們必需的一個渠道。
對於我們沒有的WebSockets誰的用戶,我們必須保持已經發生,因爲用戶的最後一次民意調查要求每個對象通道在操作的列表。爲此,我們使用一個列表,我們在最近的100個元素上加上一個列表,以及一個輔助計數器,它列出了自創建以來已添加到列表中的元素數量。所以,當我們回答來自這樣一個瀏覽器的輪詢請求時,我們可以檢查它所報告的最後一個元素,並且只發送自此之後添加到隊列中的任何消息。因此,在大多數情況下,輪詢請求只需進行權限檢查和單個Redis密鑰檢查,速度非常快。
我們存儲有關Redis的連接用戶的活動狀態的一些短暫的數據,因爲該數據經常變化,而且沒有必要把它堅持到磁盤。
我們店裏的短暫密鑰支持的OAuth登錄在Redis的。
我們愛Redis;一旦你有了它的一個實例並運行,你想用它來處理各種事情。我們遇到的唯一困難是slow-consuming clients eating up the available space。
我們使用MongoDB來滿足更傳統的數據庫需求。
Trello使用Redis的與Socket.IO(RedisStore),用於縮放,具有以下兩個特點:
- 鍵值存儲,以作爲用於pub-連接的客戶端
- 設置和獲取值子服務
資源:
中只看Socket.IO爲RedisStore代碼在這裏:https://github.com/LearnBoost/socket.io/blob/master/lib/stores/redis.js
Socket.IO與RedisStore例子:http://www.ranu.com.ar/2011/11/redisstore-and-rooms-with-socketio.html
- 1. 如何在jsfiddle.net上使用trello api client.js
- 2. 如何分析使用Trello API
- 3. 如何檢測使用Trello API
- 4. 如何使用Trello管理容量?
- 5. 使用trello API PHP
- 6. 如何在laravel中使用Redis Server Detection?
- 7. 如何在loopback-MongoDB中使用Redis
- 8. 如何在C++程序中使用Redis?
- 9. 如何在Redis Objects gem中使用hash_key?
- 10. 如何在.net中開始使用redis
- 11. 如何在列表中添加使用Trello API
- 12. 如何從trello板
- 13. 如何使用redis-scripto和redis DB在NULL中檢查null \ nil?
- 14. 如何在redis中存儲複雜對象(使用redis-py)
- 15. 創建使用Trello API
- 16. 如何使用Redis和Padrino
- 17. 如何正確使用Redis?
- 18. 如何使用django-redis包?
- 19. 如何將trello中的卡片設置爲使用httppost存檔?
- 20. Trello
- 21. 使用Chello在Trello上創建卡
- 22. Trello如何添加附件
- 23. 如何使用php redis獲取redis中的所有密鑰?
- 24. 如何使用redis ruby來計算redis中的補集操作?
- 25. 如何在redis中完美地使用redis中的五種數據結構
- 26. 在node.js中使用redis
- 27. 如何使用Node.js在Redis中使用zscan?
- 28. 如何獲取Trello API中的集合?
- 29. 如何使用中間人的Redis/redis的包創建圍棋Redis的交易?
- 30. 如何使用redis gem使用psubscribe?
非常感謝Brett。哦,並祝賀構建這樣一個真棒應用:) – William 2012-01-06 15:59:32
https://trello.com/brett – 2012-01-13 16:36:22
@Brett,你使用redis進行用戶會話數據和權限檢查嗎?謝謝! – paulkon 2014-03-18 15:09:07