Akka.net与Cassandra和动态密钥空间的持久性

时间:2015-12-08 22:40:11

标签: c# cassandra akka.net

在使用Akka.Persistence.Cassandra插件时,我无法确定是否可以在Akka.net中设置cassandra-snapshot-store和cassandra-journal表的键空间。

在我目前的设置中,我在Cassandra中有两个独立的键空间(每个客户端一个),我希望将它们的数据和消息历史分开。

据我了解,这些表是在插件的CassandraJournal和CassandraSnapshotStore类的PreStart()方法中创建的。

我不介意在加载PreStart()方法时有一个虚拟键空间,但我希望能够在系统启动并运行后更改键空间。

对此事的任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

在进一步研究之后,看起来akka.persistence.cassandra插件不支持空间的运行时切换。也不可能使用PersistenceActor的JournalPersistanceId和SnapshotPersistenceId属性来加载配置的不同部分,因为插件本身总是查看特定的cassandra-journal和cassandra-snapshot-store部分并从那里获取密钥空间。因此,我将不得不提出一种不同的方法,或许改变我分离数据的方式。