Understanding When to use RabbitMQ or Apache Kafka

This article presents and compares the origins, architectures, and use cases of Apache Kafka, which is designed for high volume publish-subscribe messages and streams, and RabbitMQ, a general purpose message broker. RabbitMQ is a “traditional” message broker that implements a variety of messaging protocols. (...) Apache Kafka is developed in Scala and started out at … Continue reading Understanding When to use RabbitMQ or Apache Kafka

Habari Client libraries 2017.06 performance test application

Habari Client libraries 2017.06 (release date TBD) includes an enhanced performance test application, which optionally collects message rates of multiple test runs and displays the sample median. Performance test application (screenshot) To start the long-running tests, shift-click on the run button. Taking all test samples takes around ten seconds. Shown below is an example for … Continue reading Habari Client libraries 2017.06 performance test application

ScroogeXHTML for Delphi 6.15 released

Version 6.15 of the RTF to HTML/XHTML converter for Delphi and Free Pascal introduces support for DBCS encoded font names, and fixes Symbol font conversion with Free Pascal. It also uses the standard string type now instead of the SXText type.

ScroogeXHTML for Delphi 6.14 released

Version 6.14 of ScroogeXHTML for Delphi introduces support for paragraph background colors and paragraph box borders. It also fixes Free Pascal warnings and Unicode character conversion.

Case studies: Synchronizing 1000s of Mobile Phones with RabbitMQ

Synchronizing 1000s of Mobile Phones with RabbitMQ Blog post by Jamil Shamy, co-authored with Dan Buchko, about a project where potentially thousands of mobile phones were required to have their audio and video synchronized.

Habari Client libraries release 2017.04

Habarisoft released new versions of Habari Client libraries for Delphi and Free Pascal application integration with popular free open source message brokers. This release has been tested with Apache ActiveMQ 5.14.5, Apache ActiveMQ Artemis 2.0, OpenMQ 5.1.1 and RabbitMQ 3.6.9. It contains enhancements and better test case organization of the included DUnit / FPCUnit test … Continue reading Habari Client libraries release 2017.04

Regular expressions for missing parameter modifiers

[(;]\s*(\w*)\s*:\s\w*[sS]tring\W This expression locates most candidates for a missing const modifier for string types. [(;]\s*(\w*)\s*:\s*([I]\w*|\w*[sS]tring)\W Same as above, also includes type names beginning with the letter I (coding convention for interface types). Examples [code lang="delphi" highlight="5,11" light="true"] // no match procedure Test(const Arg: string); // match procedure Test(Arg: WideString); // no match procedure Test(const Arg: … Continue reading Regular expressions for missing parameter modifiers

Habari Client libraries release 2017.02

Habarisoft released new versions of Habari Client libraries for Delphi and Free Pascal application integration with free open source message brokers, including Apache ActiveMQ, Apache ActiveMQ Artemis, OpenMQ and RabbitMQ. Full release notes are available at https://www.habarisoft.com/releases/2017.02/   Habari Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology … Continue reading Habari Client libraries release 2017.02

Consume a JMS ObjectMessage with Habari Client for ActiveMQ

As a follow-up to the previous article about MapMessage exchange with Apache ActiveMQ, here is an example for an ObjectMessage, sent from a Java JMS client and consumed from a Delphi application. Java (producer side) The Java code creates a java.util.Properties instance, fills it with example data,, and sends it to the destination queue as … Continue reading Consume a JMS ObjectMessage with Habari Client for ActiveMQ