msgCourier

MsgCourier (Message Courier) https://github.com/cjus/msgCourier (last checkin 2010!) (http://www.msgcourier.com/ , still referenced from there, is now something else entirely.)

  1. A cross-platform, open source, messaging infrastructure and distributed software development tool that enables applications to communicate with one another on the same machine or across a network.
  2. A priority based, secure and efficient messaging transport and routing system which frees application from having to focus on lower level communication methods.
  3. A message queuing product which offers guaranteed message delivery even when applications become temporally unavailable due to network or application failures.

GPL License. MsgCourier is designed specifically to scale to thousands of nodes.

MsgCourier offers a rich set of features, allowing you to pick and choose the features that are important to your particular application.

Designed to simplify the creation of distributed computing applications

  • MsgCourier offers several models of communication allowing applications rewritten in any computer language to communicate with one another, locally and over the Internet.
  • MsgCourier is extensible using a native plugin architecture.
  • A MsgCourier can be extended using the built-in Tcl scripting language and custom MsgCourier extensions freeing the developer from having to build native C/C++ modules.
  • Applications can communicate without establishing a direct communication link.

Message based

  • All communication is in the form of one or more messages.
  • Support for priority based message processing.
  • Support for Synchronous and Asynchronous Communication.

Designed to deliver high performance and reliability

  • MsgCourier is designed to deliver high performance and reliability while dramatically simplifying the effort of building distributed applications.
  • Messages are delivered if recipient is active, or message is stored until recipient becomes available.
  • Undeliverable messages are stored for auditing, or later delivery.
  • Supports message journaling to record communication activities. Audits and recovers messages in applications by retaining copies of messages that arrive in a queue.
  • Offers services that notify the sender on successful receipt of the messages.

Secure

  • Supports industrial strength encryption.
  • Support asymmetric (Public/Private key) and symmetric (AES Rijndael) encryption.

P2P routing and clustering

  • Message Servers are capable of clustering and self organization.
  • Message Servers are able to communicate with one another to exchange and route messages.