问题标签 [akka-supervision]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 在失败的情况下从主管发送回发件人
我有一个演员,它充当主管,但还需要将数据“返回”给调用者,这是否是演员无关紧要。
我在问我的主管,我们称他为 SV。
SV 处理我发送给他的消息,并返回一个响应。
而 SV 的接收方法是这样的:
这一切都很好。问题是当孩子抛出异常时,这个异常被主管策略捕获。
sender 不再是对首先调用 SV 的人的引用,而且我似乎无法弄清楚如何将消息发送回被询问者,并回到我原来的流程。
scala - Akka——测试监督策略
我有以下场景:父主管actor使用构造函数中传递的工厂(函数)为每条消息创建一个子节点。
在测试中,我覆盖了子 Receive 以强制异常。我的期望是因为我设定的监督策略,每次都会阻止儿童演员。
我希望由于 supervisorStrategy Stop 而停止子演员。相反,我收到此错误:
知道为什么会这样吗?谢谢
akka - Akka Actor 自定义主管
Akka 文档说要配置
akka.actor.guardian-supervisor-strategy
,它采用完全限定的类名SupervisorStrategyConfigurator
SupervisorStrategyConfigurator 是一个特征。我是否需要使用我的子类特征扩展任何类?还是我只是定义特征并在配置中指定它,导致 Akka 生成具有该特征的监护人角色?
scala - 当主管重新启动关联的 Actor 时,ActorRef 是否更新?
如果我像这样创建一个日志演员
并且记录器由于异常重新启动,我的记录器停止写入磁盘。
我一直在发消息logger ! msg
我是否正确假设当主管重新启动我的日志演员时 ActorRef 没有更新?
scala - Akka 自定义主管未生效
在 src/main/resources/application.conf
这是指以下内容:
我的演员是这样实例化的
和
但是,当miner
遇到异常时,它仍然会重新启动(它仍然使用默认的主管策略)
作为旁注,我的演员有非常简单的内部状态。所有失败都是由于外部资源造成的(即,由于服务器发送了错误的响应,Futures 未返回),因此不需要重启 actor 的默认策略。
akka.net - 无法让主管策略在 Akka.NET 中工作
我正在尝试监督策略工作。这是该场景的说明。
实现 SupversiorStrategy 的演示应用程序图
我有一个演员 FloorTrader,它在 OnReceive(object message) 时创建一个 FederalRegulator Actor:
然后,在构建时,FederalRegulator 创建 StateRegulators
所有 Regulators 在构造时都会发出 Console.Write() 行为,如下所示:
FloorTrader 角色中 SupervisionStrategy() 的实现是:
当 FederalRegulator 收到 STOP 消息时,它会触发自定义异常 TradeException,如上面 FederalRegulator 代码中所示。
触发 STOP 消息之前的输出是预期的:
我的想法是,因为我使用的是 OneForOneStrategy,所以一旦我触发了 STOP 消息,FederalRegulator 演员,即发射者,EAST_USA is regulating the trade for, HP
应该停止,但它的孩子,StateRegulators 应该继续前进。
但是,当我使用以下命令触发 STOP 消息时:regulator.Tell("STOP");
TradeException 被抛出,但 FederalRegulator 不断发出。此外,我收到了死信消息:
任何人都可以帮助我找出我的方式的错误。根据我一直在阅读的内容,当一个人使用 a 时OneForOneStrategy()
,父母应该停止,孩子们会继续。
scala - 出现异常后重新启动 Actor 并保持之前的状态。
希望通过主管策略在出现先前状态的异常后重新启动actor。
例如
演员主管从他的孩子那里保存了一些参数。主管也有下一个策略:
如何通过supervisorStrategy设置“崩溃前”演员的先前参数。?
我无法通过http://doc.akka.io/docs/akka/2.4.2/general/supervision.html找到它
任何链接,示例?
谢谢!
scala - 如何重试失败的akka-http请求流解组?
我知道使用 ActorMaterialzer 上的监督策略可以重新启动 akka-stream
来源:http ://doc.akka.io/docs/akka/2.4.2/scala/stream/stream-error.html
我有以下用例。
有时查询将无法解组。我想在
https://example.org/?q=v
不重新启动整个字母表的情况下对该单个查询使用重试策略。
akka - 如何在 Akka 中监督集群单例?
我正在尝试监督 Akka Actor,更具体地说是使用ClusterSingletonManager
. 我正在尝试对异常、日志和 Actor 的生命周期进行更多控制。
不幸的是,在实施解决方案后,我让 Singleton Actor 抛出异常,但日志中没有显示任何内容,Actor 或 Cluster 也没有关闭。
我的实现如下:
那么,是否有可能监督 Cluster Singlegon?如果可能的话,我应该如何解决这个问题?
scala - Akka Actor 延时后重启
我有一个主管演员,可以创建几个儿童演员。我还定义了一个进行 OneToOne 处理的监督策略:
我想知道如何在此重新启动中引入超时,以便在重新启动孩子之前说 5 秒?我没有看到任何 Akka 文档指向我任何可配置的超时。有什么线索吗?我不想拥有 Thread.sleep(...)。这绝对是不合情理的。还有其他建议吗?