/images/avatar.jpg

David Vlijmincx | Senior software developer

I am a Senior developer, Public speaker, Java blogger, and Author

Benchmarking Java code with JMH

Introduction In this post, we take a look at how to benchmark Java code using JMH. JMH is a tool or harness as they call it to benchmark code running on the JVM. The tool takes care of warm-ups, can prevent code optimizations, and running multiple variations of the benchmarks. Dependencies To use JMH in your project include the following dependencies in your pom.xml file. 1 2 3 4 5 6 7 8 9 10 <dependency> <groupId>org.

Virtual vs Platform Threads for API Calls

This post dives into virtual threads and explores if they are a silver bullet for making a high volume of API calls. Intro The application I am working on performs a significant number of concurrent REST calls (over 10_000) with minimal processing required on the response. This scenario seems ideal for virtual threads. Let's analyze how they perform application and if the switch is worthwhile. Background Virtual threads introduce an abstraction layer on top of traditional platform threads.

Virtual vs Platform Threads When blocking operations return too fast

final update See this post for the most accurate results: Virtual vs platform threads when making API calls Update After some feedback, I ran some new tests using code that is mentioned in JEP 444: Virtual Threads. which is this one: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 void handle(Request request, Response response) { var url1 = .

Ship Faster, Fix Less: How First-Time Right Can Boost Your Development Workflow

First time right is a concept that my girlfriend told me about while she was learning about Lean. The first thing that came to mind was “How is that possible!?". Most of the time in software development nothing goes right the first time, there is a bug, misunderstood requirement, deployment failure, or DNS issue. What is this magical thing used in the industrial sector, and how can we apply it to software development?