Ultra Messaging® Concepts

March 2014

Table of Contents
1. Introduction
2. Fundamental Concepts
3. UM Objects
4. Architecture
5. UMS Features
6. Monitoring UMS
7. Manpage for lbmrd

This document introduces important fundamental design concepts behind Ultra Messaging® high performance message streaming. Understanding these concepts is important to software developers designing and writing application code that uses the Ultra Messaging Application Programming Interface (API). For information about Parallel Persistence® and queuing, see The Ultra Messaging Guide for Persistence and Queuing.

1. Introduction

Ultra Messaging comprises a software layer, supplied in the form of a dynamic library (shared object), plus a daemon that implements persistence and queuing capabilities. These components provide applications with message delivery functionality that adds considerable value to the basic networking services contained in the host operating system. Applications access Ultra Messaging features through the Ultra Messaging Application Programming Interface (API).

There are actually four APIs: the UM C API, the UM Java API, the UM .NET API and the JMS API . These APIs are very similar, and for the most part this document concentrates on the C API. The translation from C functions to Java or .NET methods should be reasonably straightforward; see the UM Quick Start Guide for sample applications in Java and .NET.

The three most important design goals of Ultra Messaging are to minimize message latency (the time that a given message spends "in transit"), maximize throughput, and insure delivery of all messages under a wide variety of operational and failure scenarios. Ultra Messaging achieves these goals by not duplicating services provided by the underlying network whenever possible. Instead of implementing special messaging servers and daemons to receive and re-transmit messages, Ultra Messaging routes messages primarily with the network infrastructure at wire speed. Placing little or nothing in between the sender and receiver is an important and unique design principle of Ultra Messaging.

Copyright (c) 2004 - 2014 Informatica Corporation. All rights reserved.