Both of them are product from Tibco and used extensively across global investment banks for front end to back end communication or server to server communication. though they have difference in the manner they have designed and the specification they are based upon .
Tibco RV stands for Tibco Rendezvous which is based on proprietary tibco protocol (TRDP/PGM) developed by company. They have provided API in almost all major programming language and this is a preferred choice if you need high speed communication e.g. publishing market data updates etc.
Most of the stock trading application either equities or futures/options they are heavily relied on market data which they receive from various market data publishers e.g. Reuters , Bloom berg or Wombat but sometime format of market data is not something every application can directly consume so they have internal application which receives this stock prices and covert them into a format which every application can understand and here they publish market data in a tibco multicast topic say MARKETDATA.TSE.UPDATE and all application which needs can subscribe to this.
While Tibco EMS stands for Tibco Enterprise Messaging service and is based upon JMS specification which is provided by Sun MicroSystem. though other JMS implementation also available e.g. MQ Series
Tibco EMS is preferred choice for more reliable communication e.g. for sending and receiving Order and Execution data.
Today almost all the stock trading happens electronically and here its most important requirement is not to loose any order or execution received from either client or exchange , so all sell side firm which provides these trading application and infrastructure rely on tibco for such kind of needs. Tibco EMS cater this requirement by providing durable tibco topic which holds the data until every subscriber consumes it and also guarantees data shouldn't lost during network transmission.
Tibco RV do provide guaranteed communication via Tibco Certified messaging and which is used to send/receive sensitive information e.g. Order , execution or booking related data if you are using Tibco RV infrastructure since in this case you can't afford data loss which is bound to occur in case of Tibco RV.
Important part of Tibco RV infrastructure are
Rendezvous Daemon (RVD): most important part application connects to rvd daemon over TCP protocol which in tern responsible for efficient messaging over the network using TRDP/PGM multicast/broadcast transport with subject based filtering.
Rendezvous Routing Daemon (RVRD): It is used to bridge two regional network say Tokyo and London or London and New york Implements point-to-point (TCP) routing of messages with subject-based filtering across different multicast networks and also handles the RVD functionality on the local network.
to summarize
I could outline following difference between Tibco RV and Tibco EMS based upon my experience :
1) Tibco RV is proffered choice for high speed messaging e..g publish of market data etc while Tibco EMS which is based upon JMS implementation is mostly used for more reliable messaging e.g. Order and trade and mostly work on acknowledgment .
2) Also topic and queue created on Tibco EMS are static in nature and they get created on Tibco EMS Server while Subject of Tibco RV is dynamic in nature.
3) Tibco RV works on Bus model every node connected to bus have RVD running so no single point of failure if one node goes down other can still communicate with each other while in case of Tibco EMS work on Hub and Spoke model where Tibco EMS Server is Single Point of failure because all topics and queues were created on this and publisher and subscriber connects to it , so if it went down all traffic will be stopped , though Tibco EMS Server could have another failover instance which can become primary in case required.
1) Tibco RV is proffered choice for high speed messaging e..g publish of market data etc while Tibco EMS which is based upon JMS implementation is mostly used for more reliable messaging e.g. Order and trade and mostly work on acknowledgment .
2) Also topic and queue created on Tibco EMS are static in nature and they get created on Tibco EMS Server while Subject of Tibco RV is dynamic in nature.
3) Tibco RV works on Bus model every node connected to bus have RVD running so no single point of failure if one node goes down other can still communicate with each other while in case of Tibco EMS work on Hub and Spoke model where Tibco EMS Server is Single Point of failure because all topics and queues were created on this and publisher and subscriber connects to it , so if it went down all traffic will be stopped , though Tibco EMS Server could have another failover instance which can become primary in case required.
Related post: