Projekat

Općenito

Profil

Akcije

Prijedlozi #18374

Zatvoren

rabbitmq erlang server

Dodano od Ernad Husremović prije više od 16 godina. Izmjenjeno prije skoro 16 godina.

Status:
Zatvoreno
Prioritet:
Normalan
Odgovorna osoba:
Kategorija:
-
Početak:
17.09.2009
Završetak:
% završeno:

0%

Procjena vremena:

Akcije #1

Izmjenjeno od Ernad Husremović prije više od 16 godina

rabbitmq: MPL licenca

infoq rabbitmq with ruby

The Advanced Message Queuing Protocol (AMQP1) is an application layer protocol specification for asynchronous messaging. Being built as a wire-level protocol instead of an API (like e.g. JMS2) AMQP clients should be capable of sending and receiving message regardless of their respective vendors. As of now there are already quite a number of server3and client4implementations on multiple platforms available.

While the original use case for the AMQP was to provide an interoperable messaging protocol for the financial industry the current standard aims to provide an universal construction kit for generic message queue architectures. In that sense concepts of message-oriented middleware (MOM) systems such as publish/subscribe queues are not implemented directly as first class citizens. Instead users are given the means to establish such concepts by wiring relatively simple AMQ entities together. These entities are also part of the specification and form a layer on top of the wire level protocol: the AMQP model. This model unifies messaging patterns such as the before mentioned publish/subscribe, queues, transactions and streaming while adding extra capabilities such as easily extensible, content-based routing.

Publish/subscribe in this context means the decoupling of producers and consumers: producers do not need to know based on what criteria consumers will receive messages. Queues are the structures holding messages in a first-in, first-out fashion. Routing encapsulates the decision which message will eventually turn up in the messages queues present in an asynchronous messaging system.

In this introduction I will try to illustrate the concepts introduced by this model using an AMQP client implementation written by Aman Gupta in Ruby. It uses a event-driven architecture (based on EventMachine) and therefore may look and work a bit unfamiliar. However the design of the API shows the correspondence between the AMQ model entities in a very straightforward fashion and should be of value even for programmers not familiar with the Ruby language.

...

Akcije #2

Izmjenjeno od Ernad Husremović prije skoro 16 godina

  • Status promijenjeno iz Dodijeljeno u Zatvoreno
Akcije

Također dostupno kao Atom PDF