如何连接到两个不同的集群?

问题描述 投票:0回答:1

是否可以使用spring-boot 2.1.x(带有spring-data-cassandra 2. *)连接到两个不同的集群?

如果可能,如何将存储库(或模板,或CRUDRepository)绑定到集群之一?

我可以针对两个集群使用相同的模板(并可能从中创建两个bean吗?假设我想将数据存储在TTL较短的“热”群集中,并且也将数据存储在TTL较长的“冷”群集中(组成示例,因此请不要批评实际用例;))

spring-boot spring-data-cassandra
1个回答
0
投票

看看AbstractRoutingSessionFactory。您可以使用此基类,例如根据以下内容构建自己的Session路由器。 ThreadLocal储存。棘手的是要知道何时在会话之间进行切换。

您还可以通过实现由断路器或将SessionFactory呼叫路由到的设置控制的自己的Session来概括该概念。所有这些透明地发生。只需确保配置您自己的CassandraTemplate bean即可使用SessionFactory,因为Spring Boot默认为单个Session

存储库在CassandraTemplate bean上运行。

© www.soinside.com 2019 - 2024. All rights reserved.