akka-persistence

    3热度

    1回答

    我的应用程序需要记录演员处理的所有消息,并有时在minSequenceNr和maxSequenceNr之间重播消息。 对于这种用例,akka-persistence是否有用?如果是,我该如何强制从日记中重放信息?我可以使用Persistence(actorSystem).journalFor("x")来获得日记的ActorRef,但我无法发送JournalProtocol.ReplayMessag

    0热度

    1回答

    在Akka Persistence中,persist方法的计划用途是什么?我看到有这样here签名: final def persist[A](events: Seq[A])(handler: (A) ⇒ Unit): Unit 但如果我尝试调用它,如下面的例子 def receiveCommand= { case x ⇒ val events = Seq(Event("1

    4热度

    3回答

    我正在玩akka持久性试图实现一个服务,其中我的状态是一个潜在的非常大的(好吧,让我们说它不适合RAM)一些实体列表。假设用户希望所有实体的所有历史记录都可用。我可以在akka持久性中做到这一点吗? 现在我的演员状态看起来像那样。 case class System(var processes: Map[Long, Process] = Map()) { def updated(eve

    2热度

    1回答

    当我尝试从未来的onComplete中调用updateState时,我使用PersistentActor, 非常新,失败,没有任何happanes,试图调试它,并且我确实接触到持续调用但未进入在updateState trait Event case class Cmd(data: String) case class Evt(data: String) extends Event cla

    0热度

    2回答

    当在PersistentActor中使用context.become时,我有一个奇怪的行为(不知道持久性与问题的原因有什么关系)。我的代码是这样的: class MyActor extends PersistentActor { import context._ // Messages case object Start case object Read

    1热度

    1回答

    当前应用程序使用阿卡eventstream及其发布/订阅对于其中进口了大量的数据的使用情况,并且在接收数据为它发布每行和事件并且有一个用户到它。如果出版商/用户本身出现问题,这种设计将面临失去事件的风险。 我想知道如果用阿卡持久这里是有道理的,有几个原因 1)坚持事件 2)审计历史 3)重新情景与快照 注意,不是共享/全局状态(通常在几乎所有Akka持久性博客/示例中都被描述为一个用例)。 Akk

    0热度

    1回答

    我正在测试事件采购(akka-persistence)并编写了我自己的Journal插件。但是在运行性能测试时,我很快注意到并不是所有的CPU资源都被使用。将消息写入日志的类是一个actor(例如,以串行方式执行所有写入操作)。 是否可以使用该日志actor的多个实例来提高日志后端的写入性能?如果是,如何? 感谢

    0热度

    1回答

    我有一个项目在播放框架,我想预先加载一些数据,当应用程序第一次建立时(运行'激活器运行'后))。 从我明白,用于通过在/ conf文件夹创建“初始data.yml”文件,然后具有Bootstrap.java文件来实现,如下面的: import play.*; import play.jobs.*; import play.test.*; import models.*; @OnAppl

    0热度

    2回答

    我正在使用EventStore作为后端在Scala中执行一个演员。测试是基于specs2的。在规范类的初始化,正被实例化的其他类的构造函数中,我要求我的演员的东西,如果EventStore没有运行,出现因 akka.pattern.AskTimeoutException: Ask timed out on [Actor[akka://com-optrak-opkakka-authenticati

    1热度

    1回答

    我正在用阿卡持久性构建应用程序。 我必须正确检测并处理持久性故障。这怎么可能?它会抛出任何持久性异常吗? 这里是我到现在为止 override def receiveRecover: Receive = { ... } override def receiveCommand: Receive = { case WorkIsDone(workerId, workId, result) =>