使用 quarkus-jberet 扩展支持 quarkus 和 Jberet 的水平缩放

问题描述 投票:0回答:1

我习惯了quarkus作为一个整体并探索quarkus Jberet。我想弄清楚如何使用 quarkus-jberet 扩展运行 quarkus 并在 kubernetes 中扩展应用程序以进行批处理?我知道我可以使用带有可执行文件的 kuberentes 作业类型应用程序,但想知道我是否可以在 k8 环境中使用 Jbatch 及其功能并进行水平缩放?

在尝试使用带有 jberet 扩展的 quarkus 的简单应用程序时,我意识到它创建了一个像 Web 容器一样长时间运行的 quarkus 应用程序,但您也可以保存作业容器,它可以在需要时触发作业。我想知道如何使用它来水平扩展应用程序,以便 kubernetes 环境中的多个 pod 可以共享负载来运行相同的作业。

我尝试过使用 jberet 1.21 来使用 quarkus 2.16。因为我们需要更多时间来获得最新版本的 quarkus 以及 quarkus-Jberet 扩展。但如果我们也有更高版本的解决方案,谢谢?

quarkus batch-processing
1个回答
0
投票

可以设置一个共享的 JobRepository(例如,使用 JDBC),然后使用 REST 端点(也由 jberet-rest 模块提供)启动/停止每个作业。通过负载均衡器,每个作业执行都可以分布在您的 Pod 中。

或者,您可以设置一个 Quarkus 主类,它需要运行该作业,这样您就不需要长时间运行的进程。

© www.soinside.com 2019 - 2024. All rights reserved.