Blog Layout

API Mocking: Essential and Redundant

I love contradictions where both states of truth can work at the same time. Case in point is this tweet about mocking from the other week: If you use mocks, you are not testing My answer was: [Mocks help assert limited fixed functionality and they do it FAST. Which is what unit tests are about. Mocks are an essential part …

Read More »

The Future of EJB

EJB, or Enterprise Beans, are Java classes with a number of container provided services attached to them, such as transactions, remoting and security. In this article we will take a look at what we can expect for EJB in the future. Once upon a time EJB was almost synonymous with what was called Java EE or J2EE back then (Jakarta …

Read More »

What is Jakarta RPC?

Jakarta EE is at the forefront of innovation in enterprise Java. This means staying close to the community and working on new specifications to meet developer needs. Now that Jakarta EE 10 has been released, the first release to bring new features since the move to the jakarta namespace, all the upcoming releases of Jakarta EE will bring new features. The improvements …

Read More »

Reducing Tail Latencies with Chronicle Queue Enterprise

Persistent queue solutions are frequently used when designing low-latency applications. The problem is that high sustained message rates, or bursty workloads, can lead to delays caused by the OS or hardware which are challenging to mitigate. In this article, we will describe how Chronicle Queue Enterprise solves this. Background When benchmarking Java low-latency persistent queue solutions, latencies tend to be …

Read More »

Java Performance: Ahead-Of-Time versus Just-In-Time

Recently the Azul team attended Devoxx Belgium, one of the biggest Java conferences with over 3,200 visitors. We talked with many developers and DevOps engineers, and one of the recurring questions was about the difference between Just-In-Time (JIT) and Ahead-Of-Time (AOT) execution of applications. More specifically, about better JIT performance compared to a native compiled AOT application. In this post, …

Read More »

Java on Azure Tooling Update – October 2022

Hi everyone, welcome back to the October update of Java on Azure Tooling. In this update, we will introduce our new roadmap in the next few months. In addition, we have made improvements for developers to use deployment slots for Azure Functions in IDEs directly with our latest release. Please download and install the Azure Toolkit for IntelliJ. We hope …

Read More »

Geo-routing with Apache APISIX

Apache APISIX, the Apache-led API Gateway, comes out of the box with many plugins to implement your use case. Sometimes, however, the plugin you’re looking for is not available. While creating your own is always possible, it’s sometimes necessary. Today, I’ll show you how to route users according to their location without writing a single line of Lua code. Why …

Read More »

Winner NLJUG Innovation Award 2022!

During the 19th edition of the J-Fall Conference, which took place on November 3rd in Pathé Ede, the winner of the NLJUG Innovation Award was chosen live on stage by 1.500 Java developers. The three nominees were announced before J-Fall took place: Adyen, Maqqie en Omoda. They presented their innovative project to the audience via a video pitch. After which …

Read More »

Clean Shutdown of Spring Boot Applications

For the last three to four years, I have been working on Spring Boot and its associations, such as Spring Cloud, Spring Data, and Spring Security. I have always been tempted to use the combination of Ctrl+C and task kill for the purpose of killing Spring Boot applications or processes. It can be automated by a batch script, but usually …

Read More »

Observability is Cultural

I’m guilty of applying the word debugging for practically anything. My kids’ legos won’t fit, let’s debug that. Observability is one of the few disciplines that actually warrant that moniker, it is debugging. But traditional debugging doesn’t really fit with observability practices. I usually call it “precognitive debugging”. We need to have a rough idea in advance of what our …

Read More »