The Benefits of Apache ActiveMQ Virtual Topics

Matt discusses the advantages of using virtual topics in ActiveMQ, particularly in multi-server environments. He highlights that virtual topics enable architecture changes without requiring code modifications, allowing DevOps to handle scaling, high availability, and fault tolerance independently of programmers. ActiveMQ's implementation of virtual topics is straightforward, providing a simple, versatile solution that works across various protocols and languages, enhancing application reliability.


Video Contents

When we work with customers using ActiveMQ, one of our very favorite features is virtual topics. With a single server, messaging patterns are pretty straightforward. However, once more servers are added to the architecture, for example, to support scaling, high availability, or fault tolerance, messaging patterns become much more complicated and often require code changes whenever architecture is adjusted. This is problematic as it couples teams from a project in scheduling a timeline perspective. It is much more advantageous for DevOps- teams to be able to make architecture and not require coding from the programmers.

So there's two big wins when using virtual topics. First, they enable these types of architecture changes without having to change the code. Essentially, virtual topics support all multi-server messaging patterns. Secondly, virtual topics allow for additional applications to subscribe to the message flow on demand, also without having to change the original code. This is a huge win for your org, and decouples dev from ops from a planning and scheduling perspective. Apps are able to get up and running, and then scaling high availability and disaster recovery changes may be added in follow-on architecture activities without involving programmers. ActiveMQ implements this in a really elegant way. The app producing messages simply sends to a topic, and then the app that comes to consume messages, instead of reading from that topic, reads from a specially named queue. The ActiveMQ broker ensures a copy of each message sent to the topic is delivered to all the specially named queues. No outside code or additional configurations required.

This is the case of ActiveMQ providing a very simple solution that provides a ton of practical value. By using virtual topics, you're not locked into any one protocol or programming language. Virtual topics are supported across the most commonly used APIs and protocols, including JMS, NMS, AMQP, and MQTT. Virtual topics bring the best of event driven application design with the proven reliability of queued messaging.

Matt Pavlovich

Matt Pavlovich, the Chief Technology Officer and Technical Practice Lead at HYTE Technologies, directs the HYTE Product Development Team. With a wealth of experience in the Open Source Software community, Matt is also a Committer on the Apache ActiveMQ project. Known for his technical prowess and leadership skills, Matt has successfully led numerous large-scale ActiveMQ implementations worldwide. Under his guidance, HYTE's services and tools enable accelerated Enterprise application development and enhance the supportability of middleware solutions.

Previous
Previous

What is ActiveMQ and Why Would I Use it?

Next
Next

Apache ActiveMQ Installation on Linux