Table of Contents What is PanamaManaging memoryMaking calls up and downWhat is io_uringSingle read with Java and UringPerformance improvementsTurning pinning into yieldingBringing It All Together When I first started exploring Virtual Threads in Java, I wanted to understand everything about …
-
Optimizing the Garbage Collector when Migrating Cloud Workloads
Table of Contents Why GC Tuning Matters on ArmOpenJDK VersionChoosing the Right Garbage CollectorHeap Size and GC Pause TimeAdaptive Heap SizingClosing the feedback loopDeveloper Education for the Java CommunityNeed Assistance from Experts? Introduction to Java on Arm You might associate …
-
Java 24 Rolls Out Today! Find Out Why It’s Aptly Named
Java 24 rolls out today, and it brings a diverse set of features. For example, compact object headers bring better performance, and various security features have been added. Or how about the eagerly-awaited solution to virtual thread pinning? This post has all the info!
-
SummarizingTokenWindowChatMemory: Enhancing LLM’s Conversations with Efficient Summarization
Table of Contents SummarizingTokenWindowChatMemoryThe Summarizer InterfaceSummarization LogicLLM SummarizationWhy This MattersConclusion LLM chat models have become an integral part of many applications today. We are all experimenting and exploring the best ways to utilize them effectively. For Java developers, LangChain4j has …
-
Java 24 : What’s New?
Table of Contents JEP 404: Generational Shenandoah (Experimental)JEP 450: Compact Object Headers (Experimental)JEP 472: Prepare to Restrict the Use of JNIJEP 475: Late Barrier Expansion for G1JEP 478: Key Derivation Function API (Preview)JEP 479: Remove the Windows 32-bit x86 PortJEP …
-
Sliding Window Counter Rate Limiter (Redis & Java)
Table of Contents IndexHow It Works1. Define a Time Window2. Track Requests3. Remove Expired Intervals4. Rate Limit CheckHow to Implement It with Redis1. Track Requests by Sub-Interval2. Remove Expired Intervals3. Sum Counts for the Active WindowImplementing it with JedisAdd Jedis …
-
Building a Declarative API with Spring AOP and SpEL
Table of Contents A story about legacyEvaluating SpEL expressionsImplementing the audit adviceTesting the audit aspectImprovementsFootnotes In this article, we’ll implement a declarative API to perform tasks belonging to cross-cutting concerns, using auditing as an example. We’ll see how SpEL and …
-
Sliding Window Log Rate Limiter (Redis & Java)
Table of Contents How It Works1. Define a Time Window2. Track Requests3. Remove Expired Entries4. Rate Limit CheckHow to Implement It with Redis and Java1. Log Each Request (If Allowed)2. Remove Expired Entries3. Count Requests in the Time WindowImplementing it …
-
Token Bucket Rate Limiter (Redis & Java)
Table of Contents How It Works1. Define a Token Refill Rate2. Track Token Consumption3. Refill Tokens4. Rate Limit CheckHow to Implement It with Redis and Java1. Retrieve current token count and last refill time2. Refill tokens if necessary and update …
-
Receiving Mails in Java with IMAP or POP3
Table of Contents Receiving mailsConnecting to the ServerProcessing MailsSanitizing received MailsUsageTesting I was recently in need to write some small demo project which was receiving and processing mails. There is a lot of documentation for sending mails, but gathering information …
-
Challenge yourself with Application Observability Code Challenges
Table of Contents What are the Application Observability Code Challenges?GoalsWhat do the code challenges look like?Your own stackOnline environment(s)The first challenge🛠️ How to Get StartedChallenge details Code challenges are a nice way to challenge yourself with programming, resulting in some …