Avis 1.2.2
Avis 1.2.2 Ranking & Summary
Avis 1.2.2 description
Avis 1.2.2 functions as a multicast event bus which offers a rapid publish/subscribe event routing service compatible with the commercial Elvin implementation developed by Mantara Software.
Elvin routers can be federated together to form wide-area event notification networks. Clients can exchange events with other clients anywhere on the bus by subscribing to messages using pattern-matching expressions that select messages based on their content.
Current uses for Elvin routers include providing a message bus for instant messaging and presence, device discovery and coordination for smart meeting rooms, and as a carrier of distributed speech transcription for meetings. The commercial implementation developed by Mantara has been used extensively for high-volume financial transaction routing.
Elvin has been useful in a wide variety of applications due to its robust, lightweight nature and ability to be federated to form wide-area messaging networks. See this page for more discussion on why you might want to use Elvin. The examples page also demonstrates a simple scenario that illustrates its use.
Major Features:
- Adaptable Communications
- A message bus supports arbitrary communications topologies: one to one, one to many, many to many. Clients simply emit and receive messages on the bus — there is no direct connection required between them, they simply receive messages they've nominated an interest in if another client somewhere on the bus emits them.
- A message bus can be used to implement traditional client-server request-reply protocols, but can also support other kinds of communications, such as message broadcast (e.g. instant messaging, SNMP device monitoring, stock tickers, RSS news) and discovery (e.g. software service discovery, Bonjour, UPnP).
- Protocols, Statelessness, Security
- A uniform message format means communication protocols become oriented around message content rather than on-the-wire encoding formats and network stacks.
- The bus architecture encourages a stateless connection between clients where possible, and often obsoletes the issues of deciding who initiates a connection, how to handle disconnection and reconnection, and how to find the service to connect to.
- In a message bus architecture security becomes a matter of deciding who can and cannot receive which messages and how they're federated across trust boundaries. Security will never be easy, but this approach can help to focus on where to apply it.
- Lightweight Messaging
- Elvin messaging is easy to add to a client application: adding the client library and a few lines of code are needed to subscribe or emit a message — no factories, registries, queues, databases or network configuration are required.
- Deciding to experiment with Elvin is a low cost decision — Avis provides an easy to install package which requires no configuration or other dependencies.
- While Elvin's simplicity makes it easy to get started, its flexibility allows it to scale to more complex jobs. Once an Elvin router is available somewhere on the network, it may become a convenient resource for other applications, and federating it with other routers allows to to be scaled up for bigger projects.
- Speed
- An Elvin message router only delivers messages to clients that are interested in them, and Elvin's subscription language allows clients to be specific enough that they don't receive messages they're not interested in.
- Because the router is stateless, does not need to support guaranteed delivery, transactions or durable subscriptions, and optimises the way it scans for matching subscriptions, it can achieve very high message throughputs. This allows it to be used for near real-time applications.1
- In fact, although Elvin may be initially be thought of as a peer to enterprise messaging systems such as JMS it really falls somewhere between IP multicast and more heavyweight messaging systems.
- Best Effort Delivery
- The Elvin protocol does not provide an absolute guarantee of delivery, just a best-effort attempt. If this sounds scary, first hand experience indicates that many systems simply do not require absolutely guaranteed message delivery, especially given the significant cost associated with providing such a guarantee.
- Costs of guaranteed delivery include slower delivery speed and complex supporting infrastructure: a guaranteed delivery system needs a persistent, transactional message store, tracking for what clients have received which messages, acknowledgment of message receipt, etc. Such systems store a lot of state on the server, which makes server failover, load-balancing and federation much harder.
- However, if you need absolute guaranteed message delivery or durable subscriptions, you may find a heavyweight enterprise messaging system such JMS a more appropriate choice, especially if you're already using a Java EE or .NET system where such a choice will allow you to integrate better with other components.2
- Where To Use An Elvin Bus
- Elvin is just one of a number of message bus middleware standards, which include enterprise standards such as the Java Messaging System (JMS) and wide-area messaging systems such as XMPP.
- The Elvin bus has three key features that make it different:
-
- It's considerably less complex and lighter-weight than other messaging systems, but can scale to large systems.
- The stateless routing approach is naturally conducive to high performance, allowing it to be used for applications that send lots of messages and need them delivered fast.
- Its design incorporates support for efficient federation of multiple routers into wide-area event routing networks.
- Elvin is also an open standard and available as Free Software.
- Current Uses
- Elvin has become a core component of a number of projects at DSTC, DSTO, and several academic institutions.
- Elvin has been used:
-
- To implement a wide-area instant messaging and presence network across several organisations,
- To provide communication and service control for smart meeting spaces,
- For RSS news dissemenination,
- To route Stock trade notifications.
- Elvin has also been used in a number of projects where it simply provides a convenient way to instrument or otherwise send a message from a program or service (e.g. instrumenting a web application).
Enhancements: Fixed bug that stopped secure messages being federated between Avis and Mantara elvind routers. Note that this fix means that Avis 1.2.2 will not federate secure messages with previous Avis router releases.
Requirements:
- Before installing Avis, you will need a Java 5 (or later) runtime or development kit installed. Windows and Unix users can get Java from Sun's Java download site. Mac OS X users can get Java 5 from Apple's download site (Mac OS X 10.4 or later).
- You can run Avis with a minimal Java Runtime Environment (JRE) but if you wish to get optimal performance it is recommended you install the full JDK to gain access to the "server" optimizing VM.
Avis 1.2.2 Screenshot
Avis 1.2.2 Keywords
Bookmark Avis 1.2.2
Avis 1.2.2 Copyright
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com