Elvin is an event routing service using a publish/subscribe event delivery model. It was originally developed at the Distributed Systems Technology Centre, an Australian Co-operative Research Centre based at the University of Queensland which operated from 1992 until mid-2006.
Elvin is most distinguished from other such systems by its support of a sophisticated content-based subscription system. Elvin clients subscribe to events using a language that resembles C boolean expressions. For example:
This expression selects messages that have a field named Department with a string value matching "IT" and a Percent-Disk-Free field with an integer value less than or equal to 10. The Elvin subscription language supports a range of operations for matching numeric and string values, including the use of regular expression matching.
Elvin is oriented around providing a fast, flexible event service that can be federated to form wide-area event notification networks. In order to achieve these goals it does not provide persistence, durability or guaranteed delivery. Elvin can thought of as providing a middle ground between low-level network multicast and higher-level, more complex, event brokers such as JMS.
In 2003, the research group that created Elvin left DSTC to found Mantara software in order to develop commercial applications of Elvin. In November 2006, Mantara announced that it would be ceasing to support Elvin as a standalone commercial product by the end of 2007.
The specifications for the Elvin protocols have been made available at the elvin.org site, and a new implementation of Elvin has subsequently been developed, Avis, an open source (GPL) implementation.