I tried to find details about broker, topic, queue; but couldn't get good results. I tried to Google on these topics but couldn't find much. Can somebody help explaining these concepts.
A topic subscription resembles a virtual queue that receives copies of the messages that are sent to the topic. Consumers receive messages from a subscription identically to the way they receive messages from a queue.
A message broker is simply a mechanism that extends the usage of message queues. Unlike message queues, message brokers can read the contents of the information carried through them. Also, message brokers can process information from all sorts of sources. For example, information read from files or HTTP requests.
In queue, you only have one receiver or consumer; unlike in topic where in you can have your message be disseminated to a number of subscribers. Also, in topic, the publisher has to be continuously active for a subscriber to receive the messages. Otherwise the message will be reallocated.
A Topic forwards a message from the producer to many consumers at once. It's a broadcast. This is often called Publish-and-Subscribe (Pub/Sub) messaging. A Queue may also have many consumers, but it forwards each message to only one consumer.
It is true that finding a simple answer is a bit difficult.
I found this Red Hat page with two simple diagram explaining JMS principles. As TIBCO EMS is ALSO an JMS implementation, the same theory about Queue and Topics applies.
To be even more "TIBCO-oriented" in my answer, please refer to page 3 and 4 of the EMS User Guide (latest version).
To summarize:
Queues
Topics
Note: In EMS, Queues and topics can be "chained" by "bridges" to give even more functionality. Others products have similar features.
Broker
A broker typically refer to both the "Message Broker" pattern from the above book reference AND to specialized products. Typically, "broker" is the role of "intelligent integration manager" given to BusinessWorks (or similar products like webMethods IS or IBM Integration Bus / Websphere Message Broker). These products are usually central to any ESB/EAI project, since they tie the messaging system with mapping, programming languages (proprietary or open like Java) and adapters to specific systems (Mainframe, ERP, etc.)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With