如何在 argo 和 kubernetes 中运行 akka 流媒体应用程序?

问题描述

如何在 argo 和 kubernetes 中运行 akka 流应用程序,我找到了有关 kubernetes 和 akka 集群的文档,但我不需要 akka 集群,我是否只需要运行一个具有许多参与者的临时 akka 应用程序;还是需要 akka 集群?

解决方法

您可以在 Deployment 中的 Kubernetes 上运行 Akka Stream 应用,就像您在测试时可以在本地运行一样。

如果您需要将应用程序扩展到许多 Pod 并处理大量输入,使用 Akka 集群来更好地分发工作可能会有所帮助。

Argo Workflows 和 Akka Streams 具有相似的目的:两者都连接一系列步骤来转换数据。 Argo Workflows 连接容器,Akka Streams 连接参与者。

根据您的用例,有一个运行 Akka Streams 应用程序(运行一段时间然后退出)的 Argo Workflows 步骤可能是有意义的。但是,将整个系列步骤编写为一个 Akka Streams 应用程序(然后在部署上运行)或只是一个 Argo 工作流(由非 Akka Streams 容器组成)可能会更简单。

tl;dr - 在 Argo 和/或 Kubernetes 中运行 Akka Streams 应用程序有多种“正确”的方法。 “最佳”选择取决于您的用例。在一天结束时,您可以将 Akka Streams 容器放入 Kubernetes 部署或 Argo 工作流的 image 字段中。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...