Home > Blogs > VMware vFabric Blog


Introducing the RabbitMQ Simulator, Video, & Open Source Bits

In this blog post I’d like to introduce you to one of our latest developments: the RabbitMQ Simulator.

This simulator was born out of a need—we wanted a better tool to teach RabbitMQ concepts to people that were new to the message broker and its AMQP protocol.

If you know me, you are probably aware that I have given quite a few RabbitMQ presentations over the year at several technical conferences. After explaining AMQP concepts many times with static images, I decided the time had come for a better tool—something more graphic and visual, something with more life and motion. So, I started working on this RabbitMQ Simulator project.

Why a RabbitMQ Simulator? The Goals

The goal of the simulator was to have a graphical tool where I could design messaging topologies by simply dragging and dropping exchanges, queues, consumers and producers into a blank canvas. Then, I wanted to draw connections between components, simulate routing keys, publish messages after pressing a button, and more. If a RabbitMQ user could see the diagrams and see the message flow across them, they would have a better understanding of how RabbitMQ works.

A second goal for the simulator was that it had to run on the browser without requiring plugins. We wanted to be able to embed the simulator sketches inside online tutorials—this would literally illustrate what the tutorial was about. I first started the project using raphael.js, which is based on SVG and plain Javascript but later switched to Processing.js, which uses a Java-like language and compiles to Javascript. The advantages I saw on the latter were that the processing language has, in my opinion, an easier Object Oriented Programming (OOP) model that allows you to handle several widgets. This is what my project required. Apart from that, I had some SVG rendering issues that I didn’t encounter with HTML5 Canvas—which Processing.js uses. But enough with the implementation details, let’s discuss what the new RabbitMQ Simulator can do for you.

Implementing the RabbitMQ Simulator Prototype

Once I got the simulator prototype running, I started showing it to several of my colleagues. From those discussions, we concluded that the simulator could be a bit more than a simple teaching tool—we could actually use it to design messaging topologies and export them directly into RabbitMQ. At the same time, the simulator could import a messaging topology into the canvas and show at a glance all the connections between components. The latter concept was pretty powerful. For example, if you need to debug your routing configuration, you can import what you have inside RabbitMQ. You could then see it within the simulator and simulate message sending. This would help to visualize exactly how routing is happening complete with animations.

RabbitMQ Simulator Features

  • The simulator currently implements the following features:
    • Three exchange types: direct, fanout and topic
    • Queue bindings and exchange-to-exchange bindings
    • Publishers that can specify payload, routing key and publish interval, like “publish 1 message every 2 seconds”
    • Message queuing
    • Round-robin message delivery
    • Default “anon” exchange representation
    • Export topology for a “play only” mode (useful for tutorials)

RabbitMQ Simulator Video

But, enough with words. Here we have a video that demos several messaging scenarios by using the RabbitMQ Simulator.

RabbitMQ Simulator Open Source Bits

Now, you are probably asking yourself, “where can I get my hands on this simulator?” We published it as open source in Github here:

https://github.com/RabbitMQSimulator/RabbitMQSimulator

As a final note, keep in mind that it is a simulator. This is not an actual broker, and it doesn’t use RabbitMQ. It just simulates the broker on the browser side. As in every simulation, some details from reality are left out in order to provide a model that is useful for its users.

To Learn more about RabbitMQ and RabbitMQ Simulator

Find more resources along with a free evaluation copy of vFabric RabbitMQ

About the Author: Alvaro Videla is a software developer on the Cloud Foundry team within VMware in Switzerland. Before moving to Europe, he worked in Shanghai to build one of the largest German online dating sites. Alvaro Co-wrote the book “RabbitMQ in Action” for Manning Publishing. Some of the RabbitMQ open source projects can be found here. In addition to programming, Alvaro enjoys music, books, and traveling with his wife.

19 thoughts on “Introducing the RabbitMQ Simulator, Video, & Open Source Bits

  1. Pingback: HOWTO: Deploying RabbitMQ Simulator on Cloud Foundry | VMware vFabric Blog - VMware Blogs

  2. test2

    I have to express appreciation to the writer just for rescuing me from this particular setting. After surfing around throughout the online world and finding methods that were not productive, I was thinking my entire life was well over. Being alive without the presence of approaches to the difficulties you have resolved as a result of your main article content is a critical case, and those which might have in a wrong way damaged my career if I hadn’t noticed your web blog. Your good understanding and kindness in touching all areas was priceless. I am not sure what I would’ve done if I hadn’t encountered such a step like this. I can now relish my future. Thank you very much for the expert and results-oriented help. I won’t hesitate to recommend your blog to any person who should get tips about this issue.

    Reply
  3. Pingback: How Fast is a Rabbit? Basic RabbitMQ Performance Benchmarks | VMware vFabric Blog - VMware Blogs

  4. sbobet

    I’ve been exploring for a little bit for any high-quality articles or blog posts in this kind of area .
    Exploring in Yahoo I finally stumbled upon this web site.
    Studying this info So i’m satisfied to show that I’ve a very good uncanny feeling I came upon exactly what
    I needed. I most undoubtedly will make sure to don?t fail to
    remember this website and give it a glance regularly.

    Here is my webpage; sbobet

    Reply
  5. www.Scoop.It

    Hi therе, just became awre of your blog tɦrough Google, and founԁ that it’s truly informative.
    I’m gonna watch oout for brussels. I will be grateful if you continue this in
    future. Lots of people will be benefited from your
    writing. Cheers!

    Here is my webpage – flood damage repair (http://www.Scoop.It)

    Reply
  6. where can i get garcinia cambogia extract

    Avoid making the bad habit of grabbing the saddle horn to pull yourself up on the horse.
    Pay for your gym membership in advance to make sure you utilize it.

    In addition, individuals who obtained more than enough HCA in Garcinia Cambogia sorts noticed a lessen in LDL
    and triglyceride degrees as well.

    Reply
  7. Anonymous

    Howdy! This post could not be written any better! Reading through this post reminds me
    of my good old room mate! He always kept chatting about this.
    I will forward this page to him. Pretty sure he will have a good read.
    Thanks for sharing!

    Also visit my blog post:

    Reply
  8. sbobet

    I am sure this piece of writing has touched all the internet visitors, its really really fastidious paragraph on building up new webpage.

    Feel free to surf to my web blog :: sbobet

    Reply
  9. sbobet

    Magnificent goods from you, man. I’ve understand your stuff previous to and you’re just extremely excellent.
    I actually like what you’ve acquired here, really like what you’re stating and the way in which you say it.
    You make it enjoyable and you still take care of to keep it sensible.
    I cant wait to read much more from you. This is actually a
    great site.

    Feel free to visit my web site :: sbobet

    Reply
  10. day trading

    Do you have a spam problem on this site; I also am a
    blogger, and I was wanting to know your situation; many of us have created
    some nice methods and we are looking to trade strategies with other folks, be sure to shoot me an email if interested.

    Reply
  11. garcinia x slim camera

    My coder is trying to persuade me to move to .net from PHP.
    I have always disliked thhe idea because of the costs. But
    he’s tryiong none the less. I’ve been using Movable-typeon
    a number of websites for aboujt a year and amm worried about
    swiitching to another platform. I hafe heard very good things abhout blogengine.net.
    Is there a way I can import all my wordpress posts into it?
    Any help would be really appreciated!

    Reply
  12. pure slim garcinia cambogia

    Very good website you have here but I was curious about if yoou
    knew of any message boards that cover the same topics talked about in this
    article? I’d really like to be a part of group where I can
    get advice from otherr knowledgeable people thbat share the same
    interest. If you have any recommendations, please let me know.
    Bless you!

    Reply
  13. Pingback: Taking Garcinia Cambogia Extract To Get Rid Of Fat The Safe Means | shayscorfield

  14. Monika

    Hi, I think your blog might be having browser compatibility issues.
    When I look at your blog in Opera, it looks fine but when opening in Internet Explorer, it has some overlapping.

    I just wanted to give you a quick heads up! Other then
    that, wonderful blog!

    Also visit my web blog: best kitchen knives japanese (Monika)

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>