Archive for the ‘ActiveMQ’ Category

ActiveMQ 5.4: Stomp over Web Sockets

Exchanging messages with the broker directly from the web browser was always interesting use case (and used by many developers). That’s why ActiveMQ was supporting Ajax API for the long time. It uses Jetty Continuations to implement threadless waiting and asynchronous delivery of messages to the web page. HTML 5 introduced web sockets, as a […]

ActiveMQ producer flow control with timeout

ActiveMQ producer flow control feature allows you to prevent overflowing the broker by slowing down fast producers. Thus far you had two options, the producer send() method will either wait until space becomes available, or fail if it’s configured through sendFailIfNoSpace property, like this: <systemUsage> <systemUsage sendFailIfNoSpace=”true”> <memoryUsage> <memoryUsage limit=”20 mb”/> </memoryUsage> </systemUsage> </systemUsage> For […]

Handling IOException in ActiveMQ

When you encounter IOException trying to persist a message on the disk, you know something has gone wrong. One of two things usually happen: Either your disk is dead, or disconnected in case you use network disks Or you just don’t have more space on the disk Depending on the type of the exception you […]

Python messaging: ActiveMQ and RabbitMQ

I found myself recently with a task of testing various Python messaging clients. In this article I’ll present my findings regarding performance and scalability on two Python clients connecting to ActiveMQ and RabbitMQ message brokers. For ActiveMQ Python client, I used pyactivemq library version 0.1.0. It’s basically a Python wrapper for ActiveMQ-CPP library, allowing Python […]

Apache ActiveMQ 5.3.0 Released

After more than a year in development, we finally released 5.3.0 version of ActiveMQ. It contains over 300 bug fixes, but also some of the neat new features. The full list of features and bug fixes, as well as the download link can be found at the release page Here, I would like to emphasize […]

Wire format negotiation timeout and log4j jms appender FAQs

Some folks have been experiencing problems with wire format negotiation timeouts. Sometimes it was due to overloaded brokers or lousy networks, but misconfiguration of log4j jms appender could also be one of the causes. So, I wrote two FAQ entries that covers this topic: Using log4j appender with ActiveMQ Wire format negotiation timeout exception Enjoy

Stomp Future

While thinking about the future of Stomp protocol, we concluded that the best place for future maintenance of the specification is under umbrella of ActiveMQ project. There are a couple reasons for this, but it basically boils down to two facts: Apache infrastructure is much better suited for this task than the one currently used […]

pyactivemq on Ubuntu

pyactivemq is a Python library that enables Python clients to communicate with ActiveMQ using both OpenWire and Stomp protocols. To do that it wraps ActiveMQ-CPP library, so it involves some compiling to make it all work. While building instructions for both ActiveMQ-CPP and pyactivemq and clear and concise, I found some additional steps were need […]

ActiveMQ in Action MEAP update

There are new chapters available on ActiveMQ in Action book in Manning Early Access Program (MEAP). This time you can read: Chapter 12 – Tuning ActiveMQ for performance – gives detailed explanation on various techniques you can use to improve your brokers’ performances Chapter 14 – Administering and managing ActiveMQ – explains how to monitor […]