我对分布式数据库还比较新,尽管我已经研究了相关文献(例如CAP定理,CRDT),并实现了一些POC以允许横向扩展我的应用程序。
现在我面临一个具有挑战性的问题。为了使应用程序横向扩展,服务之间的通信通过分布式队列完成。在这里,我确实需要自定义CRDT方法来保持数据最终一致,并且我要求我的应用程序像缓存一样工作(与REDIS有关)。
挑战在于我还需要持久化数据。这要求我将数据保持在应用程序缓存和数据库中最终一致。我检查了Cassandra,看到了一个票据[1],其中有人试图添加自定义CRDT合并功能(正如我之前提到的那样)。但这从未被纳入Cassandra,并且似乎还有一些问题需要解决。
我的选择是什么,可以是具体的分布式数据库引擎,允许自定义合并,也可以是算法,可以帮助解决该问题(例如通过db触发器或类似的东西)。
[1] https://issues.apache.org/jira/browse/CASSANDRA-6412
现在我面临一个具有挑战性的问题。为了使应用程序横向扩展,服务之间的通信通过分布式队列完成。在这里,我确实需要自定义CRDT方法来保持数据最终一致,并且我要求我的应用程序像缓存一样工作(与REDIS有关)。
挑战在于我还需要持久化数据。这要求我将数据保持在应用程序缓存和数据库中最终一致。我检查了Cassandra,看到了一个票据[1],其中有人试图添加自定义CRDT合并功能(正如我之前提到的那样)。但这从未被纳入Cassandra,并且似乎还有一些问题需要解决。
我的选择是什么,可以是具体的分布式数据库引擎,允许自定义合并,也可以是算法,可以帮助解决该问题(例如通过db触发器或类似的东西)。
[1] https://issues.apache.org/jira/browse/CASSANDRA-6412