我们计划在java中使用kafka消费者作为守护进程,它需要嗅探kafka的消息,但想知道如何自动缩放这个守护进程。请为这个建议一个最好的设计通过这个aws工人,这是一个好的解决方案吗?
9gm1akwq1#
我假设你说的是ebs工人环境。在Kafka的情况下,在sqs上工作的ebs工人环境不会有帮助。对于为kafka队列定义的使用者,您需要定义自定义自动缩放策略。除了由ec2 metrics、cloudwatch和asg驱动的开箱即用的伸缩之外,您可能还需要向cloudwatch发布更多的度量,这将允许您定义自动伸缩的触发器。使用cloudwatch警报,您可以配置backing lambda函数来执行自动缩放。当然,以上只是实现伸缩的一种简化方法,您可以实现适合您的环境的东西。队列长度(消息消耗率)是衡量伸缩性的一个好指标,您应该根据队列长度进行伸缩。这应该是基于cpu、io和其他标准的扩展的补充。
1条答案
按热度按时间9gm1akwq1#
我假设你说的是ebs工人环境。在Kafka的情况下,在sqs上工作的ebs工人环境不会有帮助。
对于为kafka队列定义的使用者,您需要定义自定义自动缩放策略。除了由ec2 metrics、cloudwatch和asg驱动的开箱即用的伸缩之外,您可能还需要向cloudwatch发布更多的度量,这将允许您定义自动伸缩的触发器。使用cloudwatch警报,您可以配置backing lambda函数来执行自动缩放。当然,以上只是实现伸缩的一种简化方法,您可以实现适合您的环境的东西。
队列长度(消息消耗率)是衡量伸缩性的一个好指标,您应该根据队列长度进行伸缩。这应该是基于cpu、io和其他标准的扩展的补充。