是否每个队列消费进程都需要自己的Docker镜像?



在Kubernetes集群环境中,与许多队列交互以处理后台任务。我需要为每个队列创建单独的可执行文件(因此是Docker映像)吗?

假设我正在使用KEDA来触发定义为Job的Docker映像的运行。

在WebJob/Azure Functions环境中,多个队列消耗函数可以存在于单个可执行文件中。

什么是最佳实践?

对于Kubernetes来说,在执行过程中高度分离工作负载是一种常见的做法。因此,消费者是它自己的部署或作业是有意义的。由于您已经有了多个分散的队列,因此将消费者分开也是有意义的。例如,如果一个消费者需要重启或升级,它可以在不影响其他消费者的情况下完成。

它不需要你有单独的Docker镜像。如果所有消费者都是相同的,除了一些配置值,如端点。您可以定义和构建一个公共映像,并通过环境变量、配置映射或秘密传递配置。

换句话说,在执行过程中,消费者通常是分开的,但它们仍然可以共享相同的映像,只是配置不同

相关内容

  • 没有找到相关文章

最新更新