gpt4 book ai didi

kubernetes - Axon Server 自动缩放拆分/合并延迟

转载 作者:行者123 更新时间:2023-12-02 11:36:21 24 4
gpt4 key购买 nike

我正在使用 Axon Server 并在 k8s 中运行的应用程序中实现自动缩放。

我在应用程序本身中创建了 ReST 端点,它查看本地配置(用于处理器和线程数),然后与 Axon Server ReST API 对话,以便适本地拆分/合并处理器。目的是使用容器生命周期 Hook 来触发它们。

因此,如果启动了一个应用程序的新实例(pod),并在 ProcessorA 上配置了 2 个线程,那么我的代码将向 /v1/components/blah/processors/ProcessorA/segments/split?context=default 发出 2 个请求。服务器上的端点。这是为了充分利用 2 个新线程。

同样,当 pod 关闭时,它会向服务器上的合并端点发出 2 个类似的请求。

当按比例放大时,我看到处理器 split 了两次,正如预期的那样。但是,在关闭时,除非我在请求之间等待很长时间(5 秒),否则我不会看到两次合并。这不太可能特别稳定,所以我想知道是否还有其他事情需要做。

也许我应该请求合并,然后循环等待它发生,然后再请求另一个。这似乎会非常缓慢。

还有一个关于 SO 有点相关的问题,Automatically scale Axon's tracking event processors ,其中 Steven 评论说当时 Axon Server 中没有内置的自动缩放功能。我最近也没有看到任何东西。

最佳答案

目前正在进行改进拆分/合并功能的工作。一方面,将返回拆分/合并的结果,已在问题 #1001 下解决。 .

这应该可以使您不必等待状态更新,这可能是它(似乎)需要很长时间的原因。顺便说一下,这个功能将成为 Axon Framework/Server 4.4 的一部分,应该会很快发布。

随后,仍在进行讨论以允许自动缩放。一个被认为很重要的要求是 TrackingEventProcessor 的能力。每个线程处理几个段(问题 #1434)。例如,这将确保 TEP 在缩放时可以接管多个段以转换边界。

最终,Axon Server 应该能够为您执行此操作。只是还没有。

所以目前我认为最务实的解决方案确实是等待结果显示在状态上'。如前所述,我相信 4.4 将通过在调用后返回拆分/合并操作的结果来改进这一点。最后,Axon 团队意识到这可以进一步改进,因此正在讨论这个问题。

关于kubernetes - Axon Server 自动缩放拆分/合并延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62300779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com