Overview
RabbitMQ provides:- AMQP message delivery - Reliable message queuing and routing
- Management UI - Web interface for queue administration
- Async agent integration - KrakenD consumes messages and forwards them
- Message persistence - Queue durability and message storage
Access
- Management UI: http://localhost:15672
- Port: 15672 (management interface)
- AMQP Port: 5672 (default, internal)
- Default Credentials:
guest/guest
The krakend Queue
The playground uses a queue named krakend that the async agent monitors for incoming messages.
Accessing the Queue
Direct link to the queue in RabbitMQ management:The
%2F in the URL represents the default virtual host / in RabbitMQ.How It Works
- Messages arrive in the
krakendqueue (via AMQP publish) - KrakenD’s async agent picks up messages from the queue
- Agent delivers messages to configured backend endpoints
- Backend processes the message payload
Message Flow
Sending Messages
You can manually publish messages through the RabbitMQ management UI:- Open http://localhost:15672
- Login with
guest/guest - Navigate to Queues tab
- Click on the
krakendqueue - Expand Publish message section
- Enter your message payload
- Click Publish message
Example Message Payload
Watch the async agent in KrakenD logs to see messages being picked up and delivered.
Async Agent Configuration
KrakenD’s async agent is configured to:- Connect to RabbitMQ on the internal Docker network
- Monitor the
krakendqueue - Forward messages to designated backend endpoints
- Handle message acknowledgment and error scenarios
Management UI Features
The RabbitMQ management interface provides:- Queue monitoring - Message counts, rates, and states
- Message publishing - Manual message injection for testing
- Exchange configuration - Routing and binding management
- Connection tracking - Active consumers and publishers
- Performance metrics - Throughput and resource usage
Viewing Messages
In the management UI, you can:- See messages waiting in the queue
- Get messages without removing them (peek)
- View message details and headers
- Requeue or delete messages
Use Cases
Async messaging is useful for:- Event-driven architectures - Decouple message production from consumption
- Background processing - Offload time-consuming tasks
- Batch operations - Queue up work for later processing
- Rate limiting - Control backend load through queue consumption rates
Monitoring
Watch the async agent activity:- Queue connection status
- Message consumption
- Delivery to backends
- Errors or retries