有没有办法在PersistenceQuery中使用快照

kos*_*tja 6 scala akka akka-persistence

PersistentView已在akka 2.4中弃用.文档建议切换到PersistenceQuery.但是,PersistenceQuery似乎仅限于事件日志,没有查询快照存储的功能.

从大量事件中恢复状态需要一些时间,因此使用快照的能力对我来说很重要.

折旧是否超过了它的时间?我应该继续工作PersistentView还是我错过了什么?如何仅使用快照处理快照PersistenceQuery

谢谢

Ben*_*ger 1

一种方法是:

  • 让用作“PersistentView”的 Actor 扩展为 PersistentActor。
  • 将您的 PersistentQuery 偏移量存储在 PersistentActor 的状态中并定期保存快照。
  • 最初将查询偏移设置为最早的偏移。
  • 在 receiveRecover 中将查询偏移设置为存储在 PersistentActor 快照中的偏移。

示例:https: //github.com/benniekrijger/todo-service/blob/master/src/main/scala/com/todos/repository/TodoRepositoryView.scala