Archive | messaging RSS feed for this section

There’s Just No Getting around It: You’re Building a Distributed System

There are many reasons why an organization would need to build a distributed system, but here are two examples: The demands of a consumer Web site/API or multitenant enterprise application simply exceed the computing capacity of any one machine. An enterprise moves an existing application, such as a three-tier system, onto a cloud service provider in order to save on hardware/data-center costs.

(Full Story: )


Top 10 Uses For A Message Queue

Elasticity & Spikability
Delivery Guarantees
Ordering Guarantees
Understanding Data Flow
Asynchronous Communication

(Full Story: Top 10 Uses For A Message Queue)

Starbucks Doesn’t Use Two-phase commits

when you place your order, the cashier marks a coffee cup with your order and places it into a queue. This queue is literally a line of coffee cups on top of the espresso machine. The queue decouples the cashier and barista, letting the cashier continue to take orders even when the barista is backed up. It also allows baristas to start servicing the queue if the store gets busy, without impacting the cashier.

(Full Story: Starbucks Doesn’t Use Two-phase commits)

HornetQ – the Performance Leader in Enterprise Messaging – JBoss

The results clearly position HornetQ as the performance leader across almost all use cases, and demonstrate it is no longer necessary to purchase expensive proprietary messaging systems to get the very best performance.
(Link: HornetQ – the Performance Leader in Enterprise Messaging – JBoss)

Accessing JBoss (JMS) behind firewall

What needs to be done to be able to access a JBoss JMS through a firewall.
(Link: Accessing JBoss (JMS) behind firewall)

Apache ActiveMQ — .NET Message Service

The NMS API (.Net Message Service API) providers a standard C# interface to Messaging Systems. There could be multiple implementations to different providers (including MSMQ).
NMS API currently supports all of the features of JMS in a simple pure C# API and implementation apart from XA.
(Link: Apache ActiveMQ — .NET Message Service)

SpringSource Acquires RabbitMQ Cloud Messaging Technology | SpringSource

RabbitMQ is a complete and highly reliable, open source, enterprise messaging system that is based on the open standard, AMQP. It offers exceptional reliability, availability and scalability along with throughput and latency performance that is predictable and consistent. Its compact and lean architecture makes it ideal for use in cloud computing environments where developers are designing tomorrow’s distributed, loosely coupled, highly scalable advanced applications.
(Link: SpringSource Acquires RabbitMQ Cloud Messaging Technology | SpringSource)

Appcelerator Entourage Documentation | Entourage MQ

Entourage MQ provides a simple to use publish/subscribe messaging system for HTML/JavaScript applications, empowering event-driven UI development in the web browser. MQ also provides facilities for wiring remote service (Ajax) requests to messages, which allows a client application to seamlessly interact with server-side services in the same message-oriented architecture.
(Link: Appcelerator Entourage Documentation | Entourage MQ)

Using Cucumber to Integrate Distributed Systems and Test Messaging

One interesting use of Cucumber is to facilitate integration and communication between different systems. At my last job we had several distributed systems that communicated via a messaging broker. It was very important that the messages sent between the different systems be kept in sync and handled appropriately. For example, System A needed to know the exact message format and queue that System B was going to be using, and vice versa. This type of integration between systems is very error prone and when something goes awry the problems can be very hard to track down. In order to ensure both systems were on the same page we used the exact same Cucumber feature in both systems but had the step definitions verify different things on the respective systems. In this post I’ll walk through a quick example illustrating the tools and techniques we used to do this.
(Link: Using Cucumber to Integrate Distributed Systems and Test Messaging)

RabbitMQ – A Fast, Reliable Queuing Option for Rubyists

So RabbitMQ has the power and reputation and if you want to do some serious queueing, you should be checking it out. With that in mind, Alexis Richardson (from the RabbitMQ team) and I have put together a few resources that will be useful to you (as a Rubyist) if/when you decide to check RabbitMQ out:
(Link: RabbitMQ – A Fast, Reliable Queuing Option for Rubyists)