foojay

Which is the Fastest JVM: OpenJDK or GraalVM?

How is a high-performance, low-latency Java application affected by the JVM version used? Every nanosecond counts for trading and other applications where messages between two different threads are exchanged in about 250ns! Read this article and find out which JDK variant comes out at the top! Benchmarks This article will use open-source Chronicle Queue to exchange 256-byte messages between two …

Read More »

Getting Started with RIFE2 Java Web Framework v1.0.0

RIFE2 is a very recently released and completely re-imagined version of my RIFE framework from 10 years ago. You can find all the details on the project website and on GitHub. What is RIFE2? RIFE2 provides an opinionated full stack web framework, without external dependencies, in a 2MB jar. It is designed as a whole to make the creation of …

Read More »

Announcing Real-time Stream Processing Unconference

I’m happy to share Hazelcast will be kicking off 2023 by hosting #RTSPUnconf to connect with community members and industry experts on the Future of Real-Time Stream Processing. Interested in joining our Stream Processing Fundamentals workshop in-person at CodeNode in London? Connect with other developers and receive a digital badge. Sign-up here: https://hazelcast.com/lp/unconference/ Why Attend: Gain valuable insight into the …

Read More »

Foojay.io at FOSDEM 2023 Trip Report

“What if Simon Ritter’s Friends of OpenJDK keynote session at FOSDEM entitled ‘After Nearly 30 Years, How Is Java So Popular?‘ ends up being held… in an empty room?” In a nutshell, this was my worst case scenario slash biggest ‘concern’ over the past weeks, narrowly followed by the image of someone taking a pic of Simon in an empty …

Read More »

Foojay Podcast #13: Denver and Boulder JUG

We started the Foojay Podcast JUG World Tour in Manchester last December. Last month we were in Dubai… and now we are on the other side of the world in the US to meet the people behind the Denver and Boulder JUG. Guests Greg Ostravich https://www.linkedin.com/in/gregostravich/ https://twitter.com/GregOstravich Zettie Chin-Fong https://www.linkedin.com/in/zettiechinfong/ Kris Woyna Matt Raible https://www.linkedin.com/in/mraible/ https://twitter.com/mraible https://raibledesigns.com Podcast host Frank …

Read More »

Using Firefox Profiler Beyond the Web

This blog post is the base for the second half of my upcoming talk at FOSDEM 2023 on the topic “Firefox Profiler beyond the web: Using Firefox Profiler to view Java profiling data.” I detailed in my last blog post how the Firefox Profiler can be used to view Java profiling data: But I’m of course not the only one …

Read More »

What Should I Know About Garbage Collection as a Java Developer?

The Garbage Collector is a crucial part of the Java Virtual Machine (JVM) that has an impact on the performance and reliability of your application. But what is it exactly, and why is it important to understand how it works? If you’re a Java developer, you might ask, “What should I know about Garbage Collection?” Since I joined Azul as …

Read More »

Explained: Memory Allocation Pacing in Azul Zulu Prime builds of OpenJDK

The Java Virtual Machine (JVM) that runs your Java applications has a Garbage Collector (GC) responsible for recycling memory objects that are no longer needed. The GC operates by cycles, and running a cycle takes some time. Azul Zulu Prime uses the C4 Garbage Collector, which runs concurrently with your Java application. During the GC cycle, the application may outrun …

Read More »

Debugging Threads and Asynchronous Code

I’m doing a community interview in the Code Ranch drop by and ask a question to win a free book! This week we’ll discuss one of the harder problems in programming: threading. For many cases threading issues aren’t as difficult to debug. At least not in higher abstractions. Asynchronous programming is supposed to simplify the threading model but oftentimes it …

Read More »

Memory Debugging – a Deep Level of Insight

When I mention memory debugging the first thing that comes to the minds of many developers is the profiler. That isn’t wrong but it’s still a partial picture. Profilers are amazing at mapping that “big picture” but when you want to understand the domain, they fall short. Modern debuggers let us gain a level of insight into the application that’s …

Read More »