Monitoring Event Loops for Blockages

Chronicle’s open source Chronicle Threads library has a little known feature which is one of the first tools I get from my bag if a client reports that they are seeing latency outliers. The usual way that a developer will measure their system for latency hotspots is to use a profiler, and modern profilers are…

Read More

Monitoring Chronicle Services

Chronicle Services is a framework for building Event-driven microservices. Microservices built with Chronicle Services are efficient, easy to build, test, and maintain. Equally important they provide exceptional high-throughput and low latency. Monitoring and observability is a first class feature of the framework, and comes “for free” i.e. it requires no effort from the application developer,…

Read More

Large Price Comparison: 55 Dedicated Cloud Compute Optimised Solutions

Dedicated compute optimised instances deliver high performance for compute-bound applications in the cloud. They are, therefore, ideal for low latency applications like Chronicle’s software. However, which one gives the best bang for one’s buck in terms of performance?   To find out, I made a comparison of 55 vendors’ cheapest instances and the price of…

Read More

Using Pausers in Event Loops

Typically in low-latency development, a trade-off must be made between minimising latency and avoiding excessive CPU utilisation. This article explores how Chronicle’s Pausers can be used to automatically apply a back-off strategy when there is no data to be processed, providing an excellent balance between resource usage and responsive, low-latency, low-jitter applications. Description of the…

Read More

Tuning Java Applications for Low Latency on Linux

Introduction I have lost count of the number of times I have been told that Java is not a suitable language in which to develop applications where performance is a major consideration. My first response is usually to ask for clarification on what is actually meant by “performance” as two of the most common measures…

Read More

The Unix Philosophy for Low Latency

Unix has been around for more than 50 years, and the original design principles must be good enough for it (and its derivative, Linux) to be the most widely used Operating System on the planet – 80% of servers, most supercomputers, and the most deployed OS (Android). It is also the most popular OS on…

Read More

Comparing Approaches to Durability in Low Latency Messaging Queues

A significant feature of Chronicle Queue Enterprise is support for TCP replication across multiple servers to ensure high availability of application infrastructure. I have generally held the view that replicating data to a secondary system is faster than sync-ing to disk, assuming the round trip network delay wasn’t high due to quality networks and co-located…

Read More

Automatically Creating Microservices Architecture Diagrams

In application development, microservices is an architectural style where larger applications are structured as a collection of smaller, independent, yet interconnected services. While this allows for highly maintainable and testable applications (as each service can be maintained independent of the larger application), the problem with this method is the inherent complexity of interactions between microservices.…

Read More

Chronicle FIX: Much More Than a Quick Fix

Many of our customers have upgraded from QuickFIX/J to Chronicle FIX and this article provides some background as to why. Introduction QuickFIX/J is free, accessible, supports the FIX standard and is therefore often chosen by the IT team for a first FIX engine. However, when the business grows, its limitations become clear. The reasons most…

Read More