回答
我们使用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管理容量?
- 3. 如何分析使用Trello API
- 4. 使用trello API PHP
- 5. 如何在laravel中使用Redis Server Detection?
- 6. 如何在loopback-MongoDB中使用Redis
- 7. 如何在C++程序中使用Redis?
- 8. 如何在Redis Objects gem中使用hash_key?
- 9. 如何从trello板
- 10. 如何在redis中存储复杂对象(使用redis-py)
- 11. 创建使用Trello API
- 12. 如何正确使用Redis?
- 13. Trello
- 14. Trello如何添加附件
- 15. 如何在redis中完美地使用redis中的五种数据结构
- 16. 如何获取Trello API中的集合?
- 17. 如何使用中间人的Redis/redis的包创建围棋Redis的交易?
- 18. 如何在Android/iOS应用程序中打开Trello网址
- 19. 如何在Ruby中的陷阱环境中使用Redis调用?
- 20. 如何在Redis中搜索?
- 21. 如何重用的Redis(JRedis)在Java中
- 22. Trello Integration
- 23. 如何使用C#API更新Trello卡属性?
- 24. 如何使用API获取/设置Trello自定义字段?
- 25. 如何使用spring-data-redis连接到多个redis实例
- 26. 如何启动redis 3.2使用由redis生成的dump.rdb 2.8
- 27. 如何使redis comand SLAVEOF适用于加密redis master?
- 28. 如何在没有用户授权的情况下使用Trello API?
- 29. 如何在Redis中使用UNSUBSCRIBE命令2.6.11
- 30. 如何在python中使用redis设计多进程程序
非常感谢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