Arrow Left IconExplore Scalers

Use events from RabbitMQ to trigger autoscaling with Kedify and KEDA

Get Started
RabbitMQ Diagram

RabbitMQ is an open-source message broker that allows applications to communicate by sending messages through queues

RabbitMQ’s support for multiple messaging protocols, coupled with its flexible message queuing and routing capabilities, makes it highly adaptable for various use cases. With KEDA, RabbitMQ setups can automatically scale application components to match workload demands, providing efficient resource utilization and responsiveness in environments from e-commerce to IoT and media processing. This integration enhances the ability to handle high loads and large numbers of concurrent connections, ensuring that applications remain scalable and resilient under varied operational conditions.

Featured Use Cases

Scenario:

An online retail platform experiences variable order volumes throughout the day, with spikes during promotional events and holiday sales.

RabbitMQ Usage:

Order messages are continuously pushed to a RabbitMQ queue from the website as customers place orders, which then need to be processed by the backend systems to fulfill orders.

KEDA Usage:

KEDA scales the number of order processing workers based on the RabbitMQ queue length, ensuring that order handling capacity matches demand peaks without delays.
Get Started
                    apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  name: order-processing-scaledobject
  namespace: default
spec:
  scaleTargetRef:
    name: order-processing-deployment
  pollingInterval: 10
  minReplicaCount: 1
  maxReplicaCount: 100
  triggers:
  - type: rabbitmq
    metadata:
      queueName: order-queue
      host: rabbit.cluster
      mode: QueueLength
      queueLength: '5'