rabbitmq-architecture-simulator

command module
v0.0.0-...-18e288b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

README

RabbitMQ Architecture simulator

This project helps RabbitMQ architects to design both RabbitMQ server and AMQP related architecture design.

whatitdoes

Objective:

This project aim to provide a dockerized environment to simulate different topology of RabbitMQ server deployment. For example: Multi-Site RabbitMQ deployment with latency across 2 sites.

Everything will be running as docker containers, and is designed to rapidly spawn up and down all components.

This simulator is useful for:

  1. Testing change/settings rabbitmq.conf rapidly
  2. Behavior monitoring: Deliberate kill / overload / OOM an instance of RabbitMQ server, backpressure in extreme cases
  3. Benchmarking for the impact of variables hard to modify in real life: Network latency, packet loss, CPU and RAM bounded

Of course by benchmarking it's not mean for running production level benchmarking but as a baseline/reference benchmarking on cases such as:

  1. If I use publish confirm, how much latency it will increase vs without publish confirm?
  2. Will message drop/loss occur when a RabbitMQ server is lost
  3. Development use in your app for transaction critical section turning

Anti-Goals:

  1. Intended for production use
  2. For real/native throughput / performance benchmarking
  3. Replacing RabbitMQ Simulator

What is the difference of Architecture Simulator vs RabbitMQ Simulator?

RabbitMQ Simulator Simulate the Exchanges + Queue + Binding interaction with consumer and producer.

This repo RabbitMQ Architecture Simulator simulate the RabbitMQ server itself, such as forming Cluster in a multi-site deployment.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL