akka相关内容
我有一个用例,其中我有一个演员层次结构 parent ->childABC ->工童 现在工作子工作并将其结果发送到其父级(childABC,它是父级的子级),并且子actor(childABC)将结果发送回父actor我正在使用 pipeTo 和在这里收到死信是我的代码 parent 演员: final case 对象 GetFinalValue类 MyActor 扩展了 Actor
..
我有一个测试需要对演员 preStart() 期间发生的事情做出断言,但我不知道如何等到这种情况发生,有时它没有't 发生在断言之前(有时确实如此).我试过这个: EventFilter.debug(start = "started", 出现次数 = 1).assertDone(10.seconds) 但我在使用它时收到一条错误消息: java.lang.AssertionError:断言失
..
我正在尝试使用以下代码从 S3 下载文件: wsClient.url(网址).withMethod("GET").withHttpHeaders(my_headers: _*).withRequestTimeout(超时).溪流().地图 {case AhcWSResponse(底层) =>底层.bodyAsBytes} 运行时出现以下异常: akka.stream.StreamLimi
..
我正在使用 akka http 我的路由之一是通过 akka http 客户端 api 与外部服务交互,并且 httpRequest 持续运行我无法使其工作这是我的用例->我正在与 janus 服务器进行交互,并在服务器以“keepAlive"或“事件"进行响应后立即执行长轮询获取请求.我再次请求,因此服务器不断响应 所有这一切都发生在一个演员内部,我有一个 akka htttp 路由,它正
..
我想在生产速率为 > 时消费 SSE 事件而不丢失任何数据.消费率.由于 SSE 支持背压 Akka 应该可以做到.我尝试了几种不同的方法,但额外的消息被丢弃了. @单身人士类 SseConsumer @Inject()()(隐式 ec: ExecutionContext) {隐式 val 系统 = ActorSystem()val 发送:HttpRequest =>未来[HttpRespons
..
我在 Akka 流中有一个运算符/组件,旨在在 5 秒的窗口内计算一个值.因此,我使用 TimerGraphStageLogic 创建了我的操作符/组件,您可以在下面的代码中看到它.为了测试它,我创建了 2 个源,一个递增,另一个递减,然后使用 Merge 形状合并它们,然后使用 windowFlowShape,最后以 Sink 形状发射它们.我确保 TimerGraphStageLogic 正在
..
我们正在将 akka.net 参与者添加到遗留系统的一部分. 基本思想是消息来自外部系统,它被传递给由 akka.net 参与者管理的逻辑,然后与执行诸如将数据保存到数据库之类的操作的遗留组件通信. > 遗留代码依赖于这样一个事实,即在 CallContext 中设置了 userId,然后它可以在执行数据库写入之前检索它(以存储诸如“CreatedBy"和“LastModifiedBy"
..
您对 akka actor 内存管理/泄漏有任何经验吗?这里我有一个模块使用 akka actor 与其他模块通信,但随着时间的推移,由于堆内存大小,其中一个模块出现故障. 完成后需要给童星送毒丸吗?因为每一个请求,我都想做另一个演员,每一个请求.童星如果也有自己的童星,还需要再送毒丸吗? ps:我使用的是 Scala Akka 谢谢 解决方案 是的,您创建的每个 Act
..
我正在开发一项使用 Akka Persistence 进行事件溯源的服务.到目前为止,我们已经成功地将事件存储在 Cassandra 日志中.现在我们想通过利用 Akka Persistence Query 来实现 CQRS.作为第一种方法,我们尝试遵循集群单例模式,让参与者按标签流式传输存储的事件.现在我们将这个相当简单的 actor 包装成一个单例: public class EventPr
..
Akka 2 是否提供了一种方法来确定系统中特定时间活跃的特定类型参与者的数量? 我一直在寻找类似的东西 int actorCount = getContext().count(MyActor.class) 或 Props props = Props.create(MyActor.class, "actorName")...int actorCount = getContext().c
..
标题是不言自明的,我希望能够向父actor发送消息(意思是我想要父actor的ActorRef).在 Akka Classic(无类型)中,可以通过以下方式从子角色的 ActorContext 获取父角色的 ActorRef: context.parent (例如,参见 这个问题(在 Java 中)). 然而,Akka Typed 中的 akka.actor.typed.scaladsl
..
如何在 Scala 3 中使用 akka?我在使用 scala 3 时找不到 akka 依赖项 sbt 错误: [错误] 未找到:/Users/admin/.ivy2/localcom.typesafe.akka/akka-actor-typed_3/2.6.15/ivys/ivy.xml[错误] 未找到:https://repo1.maven.org/maven2/com/typesaf
..
我有一个场景,我必须通过他的 id 获取用户的详细信息.这是一个进入我的 HTTP 处理程序层的 HTTP 请求,我利用从请求中获得的 id,向参与者发送一条消息,然后参与者与数据库服务对话以获取用户. 现在由于这是一个 HTTP 请求,我需要通过发回响应来满足请求.于是想到了使用Akka ask模式,但心里有以下几个问题: 这会阻塞我当前的线程吗? 在我的案例中,这里使用询问模
..
如果我想在不同的 PC 上运行两个 Lighthouse 种子节点,每个节点都应该知道另一个,我应该如何配置它们?尽管我发现提到使用多个 Lighthouse 实例并看到使用多个种子节点的非种子节点配置,但我无法在知道一个的单独 PC 上找到多个种子节点(特别是 Lighthouse)的示例另一个. 我目前有类似的东西,但我不确定它是否正确. 实际上,每个 BroadcastRouter
..
我有一个演员,我在其中使用 context.become 改变状态:这是片段: def stateMachine(state: State): Receive = {情况a =>{... 做点什么context.become(stateMachine(newState))}情况b=>{... 做点什么发件人!状态}情况c=>{... 做点什么context.become(stateMachine
..
这里是我的 websocket 服务器实现. val route = get {pathEndOrSingleSlash {处理WebSocketMessages(websocketFlow)}}def websocketFlow: Flow[Message, Message, Any] =流程[消息].collect { case TextMessage.Strict(textMessage)
..
actor 向其父级发送消息的方法是什么? 我使用的是 Akka 2.2 解决方案 您正在寻找 getContext().parent() 它为您提供了父级的 ActorRef,因此您可以这样做 getContext().parent().tell(...)
..
Akka 提供了两种有些重叠的方式来管理 actor 状态,有限状态机和unbecome/become.它们各自的优点/缺点是什么?什么时候应该选择其中一个? 解决方案 FSM 是一种 DSL,允许您构建比可能的更复杂、可读 的状态机使用核心actor API.您可以向业务人员展示 FSM 代码,他们可以验证业务规则. FSM DSL 允许您更干净地将事物组合在一起.例如 trans
..
我正在学习使用 Akka-Http 构建服务器,这是我目前所写的 import akka.actor.ActorSystem导入 akka.http.scaladsl.Http导入 akka.http.scaladsl.server.Directives._导入 akka.stream.{Materializer, ActorMaterializer}导入 Spray.json.DefaultJ
..
基于演员的范式非常酷.它的有效扩展能力使其成为必须评估任何并发系统的范例.我已经阅读了一些关于它的内容,并且对核心意图有一个不错的想法:用消息和多个“参与者"驱动昂贵的操作,以最大限度地减少由于请求/响应交互而导致的等待,从而增加系统的吞吐量.但是,我还没有充分了解人们与演员一起使用的设计模式.我正在寻找基于角色的系统的设计模式. actor 设计模式的一个常见示例是一个系统,其中有一个主协
..