Giter Club home page Giter Club logo

kanin-tutorials's Introduction

Kanin / RabbitMQ Tutorials

Overview

The Kanin Tutorials are several things:

  1. In-depth documentation for Kanin, the LFE RabbitMQ client library;
  2. An LFE port of the Erlang RabbitMQ Tutorial code; and, to a certain extent,
  3. An LFE conversion of the Python RabbitMQ tutorials

About RabbitMQ

RabbitMQ is a message broker. The principal idea is pretty simple: it accepts and forwards messages. You can think about it as a post office: when you send mail to the post box you're pretty sure that Mr. Postman will eventually deliver the mail to your recipient. Using this metaphor RabbitMQ is a post box, a post office and a postman.

The major difference between RabbitMQ and the post office is the fact that it doesn't deal with paper, instead it accepts, stores and forwards binary blobs of data โ€’ messages.

RabbitMQ, and messaging in general, uses some jargon.

  • Producer - Producing means nothing more than sending. A program that sends messages is a producer.

  • Queue - A queue is the name for a mailbox. It lives inside RabbitMQ. Although messages flow through RabbitMQ and your applications, they can be stored only inside a queue. A queue is not bound by any limits, it can store as many messages as you like โ€’ it's essentially an infinite buffer. Many producers can send messages that go to one queue, many consumers can try to receive data from one queue.

  • Consumer - Consuming has a similar meaning to receiving. A consumer is a program that mostly waits to receive messages.

Note that the producer, consumer, and broker do not have to reside on the same machine; indeed in most applications they don't.

Getting Set Up

Here's what you will need:

Followt the RabbitMQ download and installation instructions linked above. Similarly, by following the instructions on the Kanin starter project Github page, you will get the rest of the dependencies needed for these tutorials.

These tutorials assume that you have done the following:

$ git clone \
    https://github.com/billosys/kanin-tutorials-starter.git \
    kanin-tutorials
$ cd kanin-tutorials
$ make compile

All instructions in the tutorials are given from the context of the kanin-tutorials directory.

Shall we begin?

kanin-tutorials's People

Contributors

odacoder avatar billota avatar

Stargazers

STYLIANOS IORDANIS avatar

Watchers

James Cloos avatar  avatar  avatar Chen Li avatar Victor Granberg avatar  avatar Lars Andersson avatar

kanin-tutorials's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.