LEARN

Chronicle Learn

Read the latest articles from our experienced developers to learn how you can write simpler and faster Java applications.

Large Price Comparison

55 Dedicated Cloud Compute Optimised Solutions

We have compared compute-optimised instances from 55 vendors, and the cost per virtual CPU differs significantly between different products. 

Behaviour Driven Development (BDD) and Event Driven Architecture (EDA) work well together as they complement each other’s strengths and weaknesses. Using both can result…

Continue reading >>
Technical Articles

Why Core-to-Core Latency Matters

Last year we had a global shortage of microchips; today, I feel there is a worldwide shortage of software developers. Like many other software…

Continue reading >>
Technical Articles

“The More You Say, the Less People Remember…

…The Fewer the Words, the Greater the Profit.” These wise words were written by François Fénelon, a writer and theologian living during the 17th…

Continue reading >>
Technical Articles

Cloud-Native Chronicle Deployment

Traditionally, companies with low-latency requirements deployed to bare metal servers, eschewing the convenience and programmability of virtualisation and containerisation in an effort to squeeze…

Continue reading >>

While the cloud offers great convenience and flexibility, the operational cost for applications deployed in the cloud can sometimes be significant. This article shows…

Continue reading >>

This article explores how to use method chaining to add routing information to serialised data structures in a lightweight fashion, where the routing information…

Continue reading >>
Technical Articles

Challenges when Developing a GUI for FIX

This article explores the Challenges in developing a Graphical User Interface (GUI) for Financial Information eXchange (FIX) data. FIX is both a protocol and…

Continue reading >>

In a previous article I described a way to organise low-latency products as multiple code bases which are bound together with a Maven Bill…

Continue reading >>
Technical Articles

Why the Cool Kids Use Event Loops

A Discussion On the Benefits of Event Loops in Java. When I was working in software development back in the 1990s, nearly all the…

Continue reading >>
Technical Articles

How to Develop Event-Driven Architectures

Last month, I wrote an article on Open source Chronicle Wire, that discusses how we could serialise an application’s state into different message formats….

Continue reading >>
Technical Articles

Unusual Java: StackTrace Extends Throwable

There are things you can do in Java you rarely see, generally because there is no use for it. However, there are some unusual…

Continue reading >>
Technical Articles

How to Get C++ Speed in Java Serialisation

Using Trivially Copyable Objects to Improve Java Serialisation Speeds For any low-latency software it is vital that the most common operations introduce minimal latency….

Continue reading >>

Become familiar with the art of object reuse by reading this article and learn the pros and cons of different reuse strategies in a…

Continue reading >>
Technical Articles

Creating Terabyte Sized Queues with Low-Latency

Queues are often fundamental components in software design patterns. But, what if there are millions of messages received every second and multi-process consumers need…

Continue reading >>

Java serialization is a popular mechanism where you are able to serialize and deserialize complex object graphs; for example where object A can contain…

Continue reading >>
Technical Articles

Why a Set Can Contain Duplicate Elements

In low-latency applications, the creation of unnecessary objects is often avoided by reusing mutable objects to reduce memory pressure and thus the load on…

Continue reading >>
Technical Articles

Low Latency Microservices, A Retrospective

I wrote an article on low latency microservices almost five years ago now. Chronicle Software has worked with a number of tier one investment banks…

Continue reading >>
Technical Articles

Monorepo Versus Bill of Materials: Shaping Your Project

During most of my development career, the usual code organization pattern was monolithic repository or Monorepo. There is a single large version control repository,…

Continue reading >>

As most Java developers know, putting values in a Java Map (like a HashMap) involves creating a large number of auxiliary objects under the…

Continue reading >>
Technical Articles

Chronicle Ring vs LMAX Disruptor

Benchmarks have a natural lifespan that can be improved with more modern hardware. This benchmark was performed on October 7, 2021. Please don’t hesitate…

Continue reading >>