Engineering With Java: Digest #72
Java warmup, Filters, IoTDB, Istio, Unused Code etc ...
👋 Java Devs! Welcome to this week’s addition! I hope you're all doing great.
This week, we cover essential insights on:
📢 Get actionable Java insights every week — from practical code tips to real-world use-case based interview questions.
Join 3300+ subscribers and level up your Spring & backend skills with hand-crafted content — no fluff.
I want to offer an additional 40% discount ($ 18 per year) until January 31st.
Not convinced? Check out the details of the past work
Before kickoff, fun post from Vlad
🗒️ Articles Of The Week (9)
Java Warmup and the Scaling Loop Problem: This article explains how Java’s just-in-time warmup phase can trigger a “scaling loop” in cloud auto-scaling: high CPU during startup causes more instances to launch, which then also warm up and spike CPU, leading to unnecessary scale-outs and cost. It describes this warmup behavior and offers four practical solutions, such as giving the compiler more resources, lowering JIT thresholds, using ReadyNow to reuse prior run profiles, and employing Optimizer Hub for large-scale environments to shorten warmup and break the loop
Request Logging Redaction in Spring Boot Filters: The article shows how to implement request logging with redaction in Spring Boot filters to capture useful diagnostic data while preventing sensitive information (like tokens, passwords, or personal fields) from being written to logs. It explains using servlet filters (especially OncePerRequestFilter) to intercept and log requests and responses, techniques for safely reading headers and bodies, and how to mask/redact confidential fields before logging.
Introduction to IoTDB: This article introduces Apache IoTDB, an open-source time-series database optimized for storing and querying timestamped data (especially from IoT devices) with an SQL-like interface. It covers how to run IoTDB (standalone or clustered), connect from Java using JDBC, and perform basic operations like creating databases and time series, inserting and querying data. Overall, it shows how IoTDB structures and manages time-series data and how to interact with it from a Java application.
Optimizing Java for the Cloud-Native Era with Quarkus: This article explains how Quarkus helps optimize Java for cloud-native applications by improving developer productivity (with live coding and Dev Services), reducing runtime costs through fast startup and low memory use, and supporting reactive, high-throughput systems ideal for microservices and Kubernetes. It highlights Quarkus’s rich extension ecosystem and its compatibility with standard Java APIs (including Jakarta EE and Spring) to ease adoption and migration.
Performance Engineering for Java: JVM Tuning and Optimization: This article covers JVM performance engineering by exploring how understanding and tuning the Java Virtual Machine can improve throughput, latency, and resource use for demanding applications. It walks through choosing and configuring modern garbage collectors (like G1, ZGC, and Shenandoah), setting key JVM flags and heap sizes, and optimizing CPU and thread management.
Istio Spring Boot Library Released: This post announces a new Spring Boot library for integrating with Istio that helps Java apps running in Kubernetes automatically generate and manage Istio resources (like VirtualService, Gateway, fault injection, and traffic routing) via simple annotations instead of manual YAML. It explains how to include and use the library in the Spring Boot project to simplify service-mesh setup and configuration for traffic policies and resilience features.
How to Automate Safe Removal of Unused Code: The blog explains how to automate safe removal of unused and dead Java code by combining Azul Intelligence Cloud (which monitors production JVMs to see what code actually runs) with the OpenRewrite auto-refactoring engine to programmatically find, flag, annotate, and incrementally remove unused code across large codebases. The process keeps developers in control through staged steps and annotations, helping reduce technical debt, clean up clutter, and improve maintainability without risking functional regressions.
Running TensorFlow from Java 25 Without JNI or Python: This article shows how Java 25’s Foreign Function & Memory (FFM) API let us run TensorFlow inference directly from Java without JNI, Python, or containers, by calling the native TensorFlow C API from a Quarkus REST service on macOS. It walks through using jextract to generate bindings, loading a frozen MNIST model, running inference with FFM memory scopes, and comparing performance—finding Java’s inference close to Python’s—demonstrating a lightweight production ML setup entirely in Java.
SQL Arrays with Spring’s amazing `JdbcClient ': This blog post discusses how to handle SQL queries that take array-like parameters (e.g., querying WHERE id = ANY(?)) using Spring’s new JdbcClient API instead of messy string concatenation or many IN placeholders. It shows a clean way to bind an array or collection into a SQL array parameter so we can write concise, parameterized queries against lists of values in databases like PostgreSQL, making JDBC code simpler and safer.
Recently Published In-house Blogs (5)
Spring Boot Interview Question - Sending Email After User Registration
Why Java Can’t Have eachWithIndex (and Kotlin Can): A Deep Dive into JVM Language Design
▶️ Videos Of The Week (3)
Enterprise Java Can Do Games Too!: Author explores how enterprise Java skills can be applied to multiplayer gaming backends, emphasizing that knowledge from transactional, high-availability enterprise systems translates well to handling game state, concurrency, and real-time updates. He discusses designing a robust server-authoritative model, choosing appropriate communication protocols (WebSockets, gRPC, TCP/UDP), managing memory and scaling for many concurrent players, and storing game/session data reliably. While Java may not be ideal for high-performance game clients, it excels at backend services, continuous data exchange, and multi-threaded server processing for online gaming infrastructure.
How to Build Your First Spring Boot App (Theory Explained): This video walks through the fundamental concepts behind building a Spring Boot application, explaining how Spring Boot simplifies setup with auto‑configuration, embedded servers, and starter dependencies. It covers the typical project structure, how dependency injection and annotations work in Spring, and how to create and run a basic REST endpoint. Overall, it’s a theory‑focused introduction designed to help beginners understand why Spring Boot works the way it does before writing their first code.
Spring Data AOT Repositories (Performance Upgrade): This video explains how Spring Boot 4 and Spring Data AOT (Ahead‑of‑Time) repositories work to boost performance by generating optimized bytecode at build time. It shows how AOT improves startup speed and throughput for Spring Data repositories by reducing reflection and runtime overhead, making Spring apps faster and more efficient—especially useful in cloud‑native and microservice environments.
🧑💻 Jobs Of The Week (3)
📚 Important Links (5)
30+ Real-World Use Case-Based Java/Spring Boot Interview Questions
Everything Bundle (Java + Spring Boot + SQL Interview + Certification)
Thats all for this week! Thanks for reading this far. If you liked it please share with your network.
Before you leave, lock in our special $18 annual subscription before January 31st! Don’t miss out—grab it here.
Happy Coding 🚀
Suraj




