My ex-boss mentioned about Tervela a while ago and I finally got a chance to learn more about it.
Coming from the Java world and having been exposed to JMS implementations like Tibco EMS, Websphere MQ and ActiveMQ; this came as a surprise to me and I would like to share this with everyone.
Tervela’s product is a messaging appliance which runs on the metal.
Its key features are as follows:
- Message transformation and routing at the network level (layers 1-3). This will pretty much eliminate the network interrupts, which would otherwise overload the processor with interrupts for every packet that was received (thus increasing the latency). Besides this, the requirement for queuing of messages at the entire network stack, which is pretty common with software based messaging systems running at the application level messaging, is eliminated too.
- Native instruction sets optimized for specific tasks and its pipelined architecture (no scheduling and interrupts so reduced latency).
- No broadcast storms (a result of crybaby phenomenon). A typical scenario will be when a consumer is unable to catch up with the message load and thus drops some packets and requests for re-transmission. This is very common in multicast based communications and the re-transmitted message is eventually sent to all the consumers, instead of sending it to the consumer who requested it.
- Custom routing algorithms eliminating filtering of the messages at the client level.
As you can see, the appliance mainly targets the financial verticals and will be a good fit for handling market data feeds at wire speeds (pub-sub domains). If you are looking for JMS semantics, look elsewhere 😉