我们的应用程序生成一个短命的字符串,大约十几个字符,应该由我们的客户稍后只使用一次。消费后消失了。或者在没有消费的情况下在10分钟内无效。此字符串的存储需要是全局的,因为使用该字符串的请求是无状态的。
我们之前一直在使用全局缓存来存储这个字符串。它功能完善。但是,它不符合语义。在缓存服务器关闭之前发生过一些事件,我们的应用程序无法正常运行。我们正在寻找用于存储这个短临时字符串的全局缓存的替代方案。它需要
global
fast write
fast read
fast delete
supports timeout
更新永远不会成为一个问题。 NoSQL听起来比RDBMS更好,但我不完全确定。任何建议/建议/提示都深表赞赏
答案 0 :(得分:0)
对于卡桑德拉:
高可用性 - 是的
全球 - 是的
快写 - 是的
快速阅读 - 是的
快速删除 - 是的,但要注意创建墓碑。如果您正在寻找全局队列,那么这就是Cassandra中的反模式。如果您只是希望每个客户端获取最新的字符串(即覆盖插入时的最后一个值),那么您就可以了。
支持超时 - 是的,如果你在谈论数据。插入数据时,Cassandra可以设置TTL(生存时间)。但同样,要小心创建墓碑。