Tagged articles

JVM

1102 articles · Page 1 of 12
Architect's Guide
Architect's Guide
Sep 28, 2026 · Backend Development

Production Services Randomly Dropping Offline: A Week-Long Debugging Journey to a Linux Kernel Bug

An engineer details a week-long investigation into random microservice disappearances from Nacos in a Spring Cloud Alibaba cluster, systematically ruling out memory, CPU, disk, network, Nacos server/client issues, and JVM problems before discovering a Linux kernel bug causing JVM pauses, resolved by kernel upgrade.

ArthasJVMLinux kernel
0 likes · 9 min read
Production Services Randomly Dropping Offline: A Week-Long Debugging Journey to a Linux Kernel Bug
JD Tech
JD Tech
Sep 22, 2026 · Backend Development

18 Advanced Java Coding Practices for High-Performance, Low-CPU Systems (Part 2)

This article details 18 advanced Java coding techniques (19-36) for high-performance, low-CPU systems, covering void/null avoidance, nested code flattening, final/static method optimization, primitive type usage, collection pre-sizing, memory management, immutable collections, loop optimization, wrapper caching, exception reuse, stack trace reduction, try-catch narrowing, bitwise operations, regex precompilation, memory alignment, constant-first comparisons, and batch processing.

Coding Best PracticesConcurrencyHigh Performance
0 likes · 52 min read
18 Advanced Java Coding Practices for High-Performance, Low-CPU Systems (Part 2)
liandk
liandk
Sep 22, 2026 · Backend Development

Java Memory Leak Deep Dive: 10 Hidden Scenarios, MAT Analysis & Prevention

This comprehensive guide covers 10 hidden Java memory leak scenarios, a 6-step MAT-based investigation SOP, code-level fixes for ThreadLocal and static collections, emergency mitigation tactics, and long-term prevention standards to eliminate recurring OOM crashes.

GCJVMJava
0 likes · 15 min read
Java Memory Leak Deep Dive: 10 Hidden Scenarios, MAT Analysis & Prevention
liandk
liandk
Sep 18, 2026 · Backend Development

Hidden GC Pauses Causing Random API Timeouts: JVM STW Troubleshooting Guide

This article reveals how long GC stop-the-world pauses cause random API timeouts without errors, detailing two fault scenarios, a four-step GC log analysis SOP with specific JVM flags, four root causes including young generation sizing and memory fragmentation, and optimization strategies from emergency restarts to G1/ZGC upgrades with monitoring alerts.

Full GCG1GC
0 likes · 15 min read
Hidden GC Pauses Causing Random API Timeouts: JVM STW Troubleshooting Guide
liandk
liandk
Sep 18, 2026 · Backend Development

Java Production Troubleshooting: Universal SOP & 10 Failure Cheat Sheet

This series finale presents a universal 6-step SOP for Java production troubleshooting, a bottom-up layered diagnosis model, a quick-reference guide for 10 common failure patterns with symptoms, root causes, and tools, plus five golden principles for incident handling.

ArthasGC AnalysisJVM
0 likes · 16 min read
Java Production Troubleshooting: Universal SOP & 10 Failure Cheat Sheet
Java Tech Workshop
Java Tech Workshop
Sep 12, 2026 · Fundamentals

Java Generics Erasure Deep Dive: What Gets Erased, Bridge Methods, and Runtime Type Recovery

This article explains Java generics erasure rules, why erasure exists for backward compatibility, how the compiler inserts checkcast instructions, the purpose and mechanics of bridge methods, how generic signatures survive in class files via the Signature attribute, and how reflection and TypeToken patterns recover type information at runtime.

Bridge MethodsJVMJava Generics
0 likes · 25 min read
Java Generics Erasure Deep Dive: What Gets Erased, Bridge Methods, and Runtime Type Recovery
liandk
liandk
Sep 7, 2026 · Backend Development

Why Your Troubleshooting Is Slow: The 4-Step Framework Senior Java Developers Use

This article contrasts junior developers' trial-and-error debugging with senior engineers' structured four-step method — confirm symptoms, layer-by-layer isolation, evidence-based root-cause analysis, and closed-loop remediation — to cut production incident resolution from hours to minutes.

JVMJavaincident response
0 likes · 8 min read
Why Your Troubleshooting Is Slow: The 4-Step Framework Senior Java Developers Use
Java Tech Workshop
Java Tech Workshop
Sep 7, 2026 · Backend Development

From Java Code to CPU Instructions: A Method Call's Complete Journey

This article traces a Java method call through five stages: compilation to bytecode, class loading with vtable resolution, interpretation via stack frames, JIT compilation with optimizations like inlining and escape analysis, and final execution as machine code on CPU pipelines.

CPU pipelineClass LoadingHotSpot
0 likes · 30 min read
From Java Code to CPU Instructions: A Method Call's Complete Journey
Java Tech Workshop
Java Tech Workshop
Sep 3, 2026 · Backend Development

Why Adding a Method Breaks Java Deserialization: The Implicit serialVersionUID Trap

This article explains how Java's implicit serialVersionUID causes deserialization failures when class structure changes, details how the JVM calculates it, shows source-level version checking in ObjectStreamClass, lists compatible and incompatible changes, and covers custom serialization mechanisms like transient, writeObject/readObject, and Externalizable.

Backward CompatibilityInvalidClassExceptionJVM
0 likes · 20 min read
Why Adding a Method Breaks Java Deserialization: The Implicit serialVersionUID Trap
samdeepthink
samdeepthink
Aug 31, 2026 · Fundamentals

Why Java Arrays Have No Constructors and How the JVM Instantiates Them

The article explains that Java arrays, unlike regular objects, lack constructors because the JVM creates them directly via special bytecode instructions, automatically zero‑initialising elements and exposing length as a field, which trades flexibility for simplicity and performance.

JVMJavaarrays
0 likes · 6 min read
Why Java Arrays Have No Constructors and How the JVM Instantiates Them
Java Architect Handbook
Java Architect Handbook
Aug 17, 2026 · Backend Development

Interview Question: What Is Flash‑Sale Warmup and Why Does It Matter?

The article explains warmup (prewarm) as the practice of moving a Java system from a cold to a hot state before traffic arrives, covering JVM JIT compilation, cache preloading, connection‑pool and thread‑pool initialization, service gray‑release, and how these steps prevent cold‑start failures in high‑concurrency scenarios.

JVMThread Poolcache
0 likes · 13 min read
Interview Question: What Is Flash‑Sale Warmup and Why Does It Matter?
CTO Full-Stack Academy
CTO Full-Stack Academy
Aug 12, 2026 · Fundamentals

Understanding Java Forward Compilation, Decompilation, and Class Loading

The article explains how Java source code is compiled into bytecode, how class loaders (including the bootstrap, extension, application, and custom loaders) load and verify classes using the parent‑delegation model, and how encryption, obfuscation, and decompilation tools affect code protection and debugging.

ClassLoaderCompilationDecompilation
0 likes · 23 min read
Understanding Java Forward Compilation, Decompilation, and Class Loading
Dabaoshi
Dabaoshi
Aug 8, 2026 · Fundamentals

Understanding JVM Class Loading: Mechanisms, Delegation, and Custom ClassLoaders

This article walks through the full lifecycle of a Java class—from loading, verification, preparation, and resolution to initialization, usage, and unloading—explains active versus passive references, the parent‑delegation model, JDK 8‑to‑17 module‑system changes, and shows how to write a custom ClassLoader for class isolation.

Class LoadingClassLoaderCustom ClassLoader
0 likes · 26 min read
Understanding JVM Class Loading: Mechanisms, Delegation, and Custom ClassLoaders
IT Services Circle
IT Services Circle
Aug 7, 2026 · Operations

Midnight NullPointerException? How Arthas Fixes It in Minutes

When a production Java service throws a NullPointerException at 2 AM, this article shows how the Arthas diagnostic tool can attach to the running JVM, inspect threads, monitor method parameters, and pinpoint the faulty null value without restarting the service, all within a few minutes.

ArthasDiagnosticsJVM
0 likes · 12 min read
Midnight NullPointerException? How Arthas Fixes It in Minutes
Programmer1970
Programmer1970
Aug 6, 2026 · Backend Development

Revisiting synchronized lock upgrade: JVM‑level details of biased, lightweight and heavyweight locks

This article explains how the JVM implements synchronized by using the object header's Mark Word to transition through biased, lightweight, and heavyweight lock states, covering the underlying data structures, lock acquisition and release processes, revocation, downgrade, tuning parameters, practical verification, performance pitfalls, and a comparison with ReentrantLock.

JVMJavaPerformance
0 likes · 16 min read
Revisiting synchronized lock upgrade: JVM‑level details of biased, lightweight and heavyweight locks
CodeOnCode
CodeOnCode
Aug 6, 2026 · Backend Development

Why Mixed GC Doesn’t Empty the Old Generation in G1

Mixed GC in G1 only reclaims a portion of the Old generation that fits within the pause‑time budget, so seeing the Old region size stay high after a mixed pause does not mean G1 has failed, but rather reflects collection cost, survival rates, and budgeting constraints.

G1 GCGarbage CollectionJVM
0 likes · 16 min read
Why Mixed GC Doesn’t Empty the Old Generation in G1
Dabaoshi
Dabaoshi
Aug 1, 2026 · Fundamentals

JVM Frontiers: What’s Next for Java’s Runtime?

The article reviews the JVM series finale, explaining how GraalVM Native Image, Project Loom, Project Valhalla, and Project Panama each address Java’s historic shortcomings—startup latency, heavyweight threads, object overhead, and clumsy native interop—while weighing their trade‑offs and future impact.

GraalVMJVMJava performance
0 likes · 12 min read
JVM Frontiers: What’s Next for Java’s Runtime?
Dabaoshi
Dabaoshi
Aug 1, 2026 · Fundamentals

JVM Concurrency Deep Dive: JMM and Low‑Level Synchronization

This article explains the three fundamental problems of Java concurrency—visibility, atomicity, and ordering—describes how the Java Memory Model and happens‑before rules address them, and details the low‑level implementations and optimizations of volatile, synchronized, lock upgrading, and the removal of biased locking in JDK 15‑17.

ConcurrencyJVMJava Memory Model
0 likes · 18 min read
JVM Concurrency Deep Dive: JMM and Low‑Level Synchronization
Dabaoshi
Dabaoshi
Jul 31, 2026 · Fundamentals

Is Java Interpreted or Compiled? Understanding the JVM’s JIT Execution

This article explains why the JVM combines interpretation and Just‑In‑Time compilation, how it detects hot code with invocation and back‑edge counters, the tiered C1/C2 compilation process, key JIT optimizations like method inlining, and how to observe JIT activity using JVM flags.

GraalHotSpotJIT
0 likes · 16 min read
Is Java Interpreted or Compiled? Understanding the JVM’s JIT Execution
Dabaoshi
Dabaoshi
Jul 31, 2026 · Backend Development

JVM GC Tuning and Live Production Troubleshooting

This article guides backend engineers through practical JVM garbage‑collection tuning and on‑line incident diagnosis, covering measurement‑first principles, JDK 8 vs 17 log changes, key JVM flags, essential tooling, and step‑by‑step real‑world cases for CPU spikes, memory leaks, and deadlocks.

ArthasDiagnosticsGC
0 likes · 20 min read
JVM GC Tuning and Live Production Troubleshooting
Dabaoshi
Dabaoshi
Jul 31, 2026 · Fundamentals

JVM Garbage Collectors: From Serial to ZGC – A Complete Overview

This article walks through the evolution of Java garbage collectors—from the early Serial collector to modern low‑latency ZGC and Shenandoah—explaining how throughput, pause time, and safepoints shape each collector’s design and what changes matter when upgrading from JDK 8 to JDK 17.

CMSG1Garbage Collection
0 likes · 21 min read
JVM Garbage Collectors: From Serial to ZGC – A Complete Overview
Dabaoshi
Dabaoshi
Jul 31, 2026 · Fundamentals

Understanding JVM GC Algorithms and the Generational Model

This article explains the three fundamental garbage‑collection algorithms (Mark‑Sweep, Copying, Mark‑Compact), the three generational hypotheses, the structure and rules of the young generation, the distinctions among Minor, Major and Full GCs, and how remembered sets and card tables efficiently handle cross‑generation references in the JVM.

Card TableGC algorithmsGarbage Collection
0 likes · 19 min read
Understanding JVM GC Algorithms and the Generational Model
Dabaoshi
Dabaoshi
Jul 29, 2026 · Fundamentals

How the JVM Allocates Objects and Arranges Their Memory Layout

This article walks through the JVM's six-step process for creating a new object, explains heap allocation strategies and thread‑local buffers, details escape analysis optimizations, reveals the exact memory layout of an object including header and padding, compares handle versus direct pointer access, and describes reachability‑based garbage collection with the four Java reference types.

Garbage CollectionJVMJava
0 likes · 22 min read
How the JVM Allocates Objects and Arranges Their Memory Layout
Dabaoshi
Dabaoshi
Jul 29, 2026 · Fundamentals

JVM Compile‑Time Secrets: Syntactic Sugar and Method Dispatch

This article walks through how the Java compiler (javac) transforms source code into bytecode, revealing the hidden steps of syntactic‑sugar removal, generic type erasure, autoboxing pitfalls, foreach/varargs handling, the five invoke instructions, static versus dynamic method dispatch, and why Lambda expressions rely on invokedynamic rather than anonymous inner classes.

JVMType Erasureinvoke
0 likes · 19 min read
JVM Compile‑Time Secrets: Syntactic Sugar and Method Dispatch
Dabaoshi
Dabaoshi
Jul 27, 2026 · Fundamentals

Understanding JVM Runtime Data Areas: From JDK 8 to JDK 17

This article walks through the five JVM runtime data areas, explains the distinction between the JVM specification and HotSpot implementation, compares the PermGen to Metaspace transition from JDK 8 to JDK 17, and provides hands‑on code to reproduce each type of memory‑related OutOfMemoryError.

Garbage CollectionHeapJVM
0 likes · 22 min read
Understanding JVM Runtime Data Areas: From JDK 8 to JDK 17
Coder Trainee
Coder Trainee
Jul 16, 2026 · Backend Development

Complete Summary of the Six‑Part Java Interview High‑Frequency Questions Series

This article compiles all 60 high‑frequency Java interview questions from six core backend topics—basics, collections, concurrency, JVM, Spring, and microservices—provides a quick‑reference table, outlines the most common and hardest questions, and shares a five‑layer answering technique for interview success.

BackendConcurrencyJVM
0 likes · 10 min read
Complete Summary of the Six‑Part Java Interview High‑Frequency Questions Series
samdeepthink
samdeepthink
Jul 15, 2026 · Fundamentals

How the JVM Implements Java’s Object‑Oriented Model

The article walks through the JVM’s internal steps that turn a simple `new User()` statement into a fully formed Java object, detailing memory allocation, the object header’s type pointer, the Klass structure, and why methods are stored at the class level rather than in each instance.

JVMJavaKlass
0 likes · 4 min read
How the JVM Implements Java’s Object‑Oriented Model
Coder Trainee
Coder Trainee
Jul 13, 2026 · Fundamentals

Top 10 Must‑Ask JVM Interview Questions

This article presents ten essential JVM interview questions, covering the Java 8 memory model, object allocation flow, common GC algorithms and collectors, class‑loading mechanics, OOM and CPU‑spike troubleshooting, tuning parameters, and the differences among strong, soft, weak and phantom references.

Class LoadingGarbage CollectionJVM
0 likes · 12 min read
Top 10 Must‑Ask JVM Interview Questions
Coder Trainee
Coder Trainee
Jul 10, 2026 · Fundamentals

Top 10 Essential Java Interview Questions: Fundamentals Edition

This article presents ten high‑frequency Java interview questions covering value vs. reference passing, String vs. StringBuilder vs. StringBuffer, == vs. equals, hashCode/equals contract, final/finally/finalize, abstract class vs. interface, reference types, static vs. non‑static inner classes, generics with type erasure, and the exception hierarchy, each with concise explanations, code examples, and extra insights for rapid interview preparation.

JVMJavaOOP
0 likes · 11 min read
Top 10 Essential Java Interview Questions: Fundamentals Edition
IoT Full-Stack Technology
IoT Full-Stack Technology
Jul 9, 2026 · Backend Development

Comprehensive Collection of Java Backend Architecture Diagrams

This article compiles a comprehensive set of 31 Java‑related architecture diagrams, covering core components such as the class loader, JVM, threading, Spring, Hibernate, as well as related technologies like Android, Linux kernel, cloud computing, and enterprise solutions, each illustrated with detailed images.

AndroidHibernateJVM
0 likes · 5 min read
Comprehensive Collection of Java Backend Architecture Diagrams
IoT Full-Stack Technology
IoT Full-Stack Technology
Jul 8, 2026 · Backend Development

Comprehensive Collection of Java Backend Architecture Diagrams

This article presents a curated list of 31 Java backend architecture diagrams, covering class loader, JVM, technology stack, thread runtime, compilation, JMS, JMX, Spring, Hibernate, iBATIS, Struts, EJB, portal, Android, cloud, Linux kernel, VMware, SAP, SOA, GIS ESB, CRM, and OA, each illustrated with detailed images.

BackendHibernateJVM
0 likes · 6 min read
Comprehensive Collection of Java Backend Architecture Diagrams
CodeOnCode
CodeOnCode
Jul 6, 2026 · Backend Development

Big‑Sale Load Test: Why You Shouldn't Rush to Tune JVM Parameters

During a major sales promotion, a sudden P99 latency jump can tempt teams to tweak JVM settings, but this article shows how to build a three‑layer evidence chain—GC logs, JFR, business and container metrics—to confirm whether the JVM is truly at fault before making any parameter changes.

Big SaleGCJFR
0 likes · 16 min read
Big‑Sale Load Test: Why You Shouldn't Rush to Tune JVM Parameters
Coder Trainee
Coder Trainee
Jul 4, 2026 · Backend Development

Deep Dive into Java Concurrency: The Source-Level Mechanics of synchronized

This article thoroughly examines Java's synchronized keyword, covering its three usage forms, the underlying bytecode instructions, how lock information is stored in the object header's Mark Word, the step‑by‑step lock upgrade process from no‑lock to heavyweight, and JVM optimizations such as lock elimination and coarsening, providing interview‑ready explanations.

ConcurrencyJVMJava
0 likes · 10 min read
Deep Dive into Java Concurrency: The Source-Level Mechanics of synchronized
Coder Trainee
Coder Trainee
Jun 29, 2026 · Backend Development

Java Performance Tuning in Practice (Part 6): End-to-End Case Study from Full GC to 200 ms Response

The article walks through a real e‑commerce order service where afternoon spikes caused response times to jump to 2‑3 seconds, Full GC to run every few minutes, and Metaspace to hit 99.9%, then demonstrates step‑by‑step analysis using monitoring, GC logs, jstat, jmap, and heap dumps, fixes a custom class‑loader leak, adjusts JVM flags, and achieves sub‑200 ms latency with no Full GC.

Classloader LeakGCJVM
0 likes · 8 min read
Java Performance Tuning in Practice (Part 6): End-to-End Case Study from Full GC to 200 ms Response
Programmer1970
Programmer1970
Jun 29, 2026 · Backend Development

How We Cut Full GC from 10 seconds to 200 ms: A Complete JVM GC Tuning Guide

A production outage at 3 am revealed a 10‑second Full GC pause on an 8 GB heap; the article walks through evidence collection, heap‑size rebalancing, switching to G1, fine‑tuning G1 parameters, and code changes that together reduced Full GC pauses to 200 ms and improved latency dramatically.

Full GCG1 GCGC Tuning
0 likes · 12 min read
How We Cut Full GC from 10 seconds to 200 ms: A Complete JVM GC Tuning Guide
Coder Trainee
Coder Trainee
Jun 28, 2026 · Fundamentals

Java Performance Tuning Part 5: Hands‑On GC Optimization from G1 to ZGC

This article walks through Java GC tuning by defining low‑latency and high‑throughput goals, comparing major collectors, presenting G1 and ZGC configuration examples, and demonstrating a real‑world payment system case where pause times were reduced from 150‑200 ms to under 50 ms.

G1GCJVM
0 likes · 8 min read
Java Performance Tuning Part 5: Hands‑On GC Optimization from G1 to ZGC
Coder Trainee
Coder Trainee
Jun 25, 2026 · Backend Development

Java Performance Tuning Part 1: Understanding the JVM Memory Model from a GC Log

This article launches a Java performance tuning series, explaining why GC logs are the starting point, reviewing the JVM memory model, showing how to enable and read GC logs, dissecting minor and full GC entries, comparing common GC algorithms, and introducing visualization tools to help pinpoint memory issues.

GCGarbage CollectionJVM
0 likes · 10 min read
Java Performance Tuning Part 1: Understanding the JVM Memory Model from a GC Log
Architect's Guide
Architect's Guide
Jun 14, 2026 · Cloud Native

18 Visual Guides to Mastering Java Containerization Best Practices

This guide walks through choosing base images, JDK vs JRE, Oracle versus OpenJDK, JVM implementations, signal handling for graceful shutdown, memory‑limit adaptation across JDK versions, DNS caching behavior, and GraalVM native compilation, providing concrete Dockerfile examples, benchmark results, and actionable recommendations for Java containerization.

ContainerizationGraalVMGraceful Shutdown
0 likes · 24 min read
18 Visual Guides to Mastering Java Containerization Best Practices
Java Architect Handbook
Java Architect Handbook
Jun 8, 2026 · Fundamentals

What’s the Relationship Between the JVM Runtime Constant Pool and the String Constant Pool?

This article explains the three Java constant pools—class file, runtime, and string—detailing their evolution from compilation to execution, their memory locations across JDK versions, how string literals are interned, code examples illustrating their behavior, common misconceptions, and typical interview follow‑up questions.

Constant PoolJVMJava
0 likes · 15 min read
What’s the Relationship Between the JVM Runtime Constant Pool and the String Constant Pool?
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 3, 2026 · Backend Development

15 Golden Rules for High‑Performance, Maintainable Java Code

This article presents fifteen concrete Java performance‑optimization rules—from readable code and proper data structures to efficient string handling, database access, caching, multithreading, reflection, JVM tuning, and memory management—each illustrated with before/after code examples and practical advice.

CachingConcurrencyJVM
0 likes · 14 min read
15 Golden Rules for High‑Performance, Maintainable Java Code
Programmer1970
Programmer1970
May 31, 2026 · Fundamentals

Why synchronized is slower – tracing its roots from MESI cache coherence

The article demystifies why Java's synchronized keyword can be slower by tracing the full path from CPU cache‑coherence (MESI) through bus and cache locks, volatile, biased and lightweight locks, up to the heavyweight monitor implementation, revealing each layer’s impact on visibility, ordering and atomicity.

ConcurrencyJVMJava
0 likes · 15 min read
Why synchronized is slower – tracing its roots from MESI cache coherence
Java Architect Handbook
Java Architect Handbook
May 27, 2026 · Fundamentals

What Triggers Young GC vs. Full GC in Java? Interview Guide

The article explains that Young GC fires when the Eden space is full, while Full GC can be triggered by old‑generation shortage, metaspace exhaustion, allocation‑guarantee failure, or an explicit System.gc() call, and provides interview‑ready answers, diagnostic steps, and a comparison table.

Garbage CollectionJVMJava
0 likes · 14 min read
What Triggers Young GC vs. Full GC in Java? Interview Guide
Architect's Guide
Architect's Guide
May 27, 2026 · Backend Development

Comprehensive Collection of Java Backend Architecture Diagrams

This article compiles over thirty detailed architecture diagrams covering Java class loaders, JVM, Spring, Hibernate, Android, Linux kernel, cloud computing, and various enterprise technologies, offering developers a visual reference library for understanding and designing Java backend systems.

HibernateJVMJava
0 likes · 5 min read
Comprehensive Collection of Java Backend Architecture Diagrams
Java Tech Workshop
Java Tech Workshop
May 24, 2026 · Fundamentals

Why Does Java Initialize Static Members Before Instance Members? A Deep Dive into Object Initialization

The article explains Java's two‑phase object initialization, the seven‑step JVM process, static versus instance execution order, parent‑child class initialization rules, variable assignment lifecycle, and common pitfalls such as static forward references and constructor‑called overridden methods, all illustrated with concrete code examples.

InheritanceJVMJava
0 likes · 10 min read
Why Does Java Initialize Static Members Before Instance Members? A Deep Dive into Object Initialization
Java Tech Workshop
Java Tech Workshop
May 18, 2026 · Fundamentals

Understanding Compile-Time and Run-Time Constants in Java

This article explains the fundamental differences between compile-time and run-time constants in Java, covering their definitions, required modifiers, allowed data types, initialization rules, JVM storage behavior, class‑initialization effects, constant‑folding optimizations, practical code examples, common pitfalls, and guidelines for choosing the appropriate constant type in production code.

JVMJavaPerformance
0 likes · 21 min read
Understanding Compile-Time and Run-Time Constants in Java
TonyBai
TonyBai
May 7, 2026 · Backend Development

Why an AWS Evangelist Calls Go’s Concurrency a Joke Compared to JVM’s Superior Model

The article revisits the heated debate sparked by AWS evangelist James Ward, who argues that Go’s concurrency primitives are inferior to the JVM’s virtual threads, structured concurrency, and effect systems, using a demanding connection‑pool challenge to illustrate the trade‑offs and guide architects in choosing the right model for their workloads.

ConcurrencyEffect SystemsGo
0 likes · 11 min read
Why an AWS Evangelist Calls Go’s Concurrency a Joke Compared to JVM’s Superior Model
Java Architect Handbook
Java Architect Handbook
Apr 30, 2026 · Fundamentals

What Is a Daemon Thread and How Does It Differ From a Normal Thread?

The article explains that a daemon (background) thread in Java supports user threads but does not prevent JVM shutdown; when all non‑daemon threads finish, the JVM exits regardless of daemon threads, covering definitions, usage scenarios, creation methods, pitfalls, detailed comparisons, and typical interview questions.

ConcurrencyDaemonThreadJVM
0 likes · 10 min read
What Is a Daemon Thread and How Does It Differ From a Normal Thread?
LuTiao Programming
LuTiao Programming
Apr 29, 2026 · Backend Development

Java 2026 Learning Roadmap: The Proven Path to Double Your Salary

This article outlines a step‑by‑step Java learning roadmap—from core fundamentals to microservices, high‑concurrency, AI integration, and cloud‑native deployment—showing how targeted skill progression can dramatically boost both technical competence and earning potential.

AIJVMJava
0 likes · 9 min read
Java 2026 Learning Roadmap: The Proven Path to Double Your Salary
Java Backend Full-Stack
Java Backend Full-Stack
Apr 20, 2026 · Backend Development

What Skills Should a 3‑Year Java Backend Developer Master?

The article outlines a comprehensive skill matrix for a three‑year Java backend engineer, covering core Java and JVM knowledge, mainstream frameworks, storage, messaging, containerization, architecture, engineering practices, soft skills, and emerging trends such as AI integration and reactive programming.

ConcurrencyJVMJava
0 likes · 9 min read
What Skills Should a 3‑Year Java Backend Developer Master?
Java Web Project
Java Web Project
Apr 16, 2026 · Backend Development

How I Resolved a 13‑Hour OOM Nightmare in a Spring Boot Service

The article walks through a 13‑hour out‑of‑memory incident on a Spring Boot 2.7 service running in Kubernetes, detailing how to preserve the crash dump, interpret GC logs, use MAT and Arthas to pinpoint a static HashMap leak, and apply both temporary and permanent fixes while hardening the system for future safety.

ArthasJVMJava
0 likes · 18 min read
How I Resolved a 13‑Hour OOM Nightmare in a Spring Boot Service
LuTiao Programming
LuTiao Programming
Mar 26, 2026 · Backend Development

5 Overlooked Java Features That Are Silently Slowing Your JVM

The article demonstrates how five often‑ignored Java 21 capabilities—virtual threads, structured concurrency, ZGC, records, and pattern matching—can dramatically improve throughput and stability, while neglecting them silently degrades JVM performance.

JVMJavaPattern Matching
0 likes · 7 min read
5 Overlooked Java Features That Are Silently Slowing Your JVM
ITPUB
ITPUB
Mar 22, 2026 · Backend Development

How I Rescued a Critical Java Service from 100% CPU: A Step‑by‑Step Debugging Guide

When a midnight CPU alarm threatened a core Java service, I raced through system checks, JVM profiling, algorithm refactoring, database indexing, Docker isolation, and Prometheus alerts, ultimately restoring performance and highlighting the importance of proactive monitoring and technical debt management.

CPUJVMJava
0 likes · 7 min read
How I Rescued a Critical Java Service from 100% CPU: A Step‑by‑Step Debugging Guide
Coder Trainee
Coder Trainee
Mar 21, 2026 · Backend Development

Demystifying JVM Tuning: Practical Principles and Parameter Guide

The article outlines JVM tuning fundamentals, categorizing common issues, presenting six optimization principles, detailing key JVM parameters, and introducing the jps command‑line tool to help developers diagnose and improve Java application performance while maintaining stability.

Garbage CollectionJVMJava
0 likes · 4 min read
Demystifying JVM Tuning: Practical Principles and Parameter Guide
Coder Trainee
Coder Trainee
Mar 21, 2026 · Fundamentals

Understanding JVM Basics for Effective Tuning

The article explains the JVM's core components, execution workflow, garbage collection fundamentals—including GC roots and Stop-The-World pauses—and introduces basic tuning tools like VisualVM and Arthas, helping readers grasp where performance optimizations should focus.

ArthasGarbage CollectionJVM
0 likes · 3 min read
Understanding JVM Basics for Effective Tuning
LuTiao Programming
LuTiao Programming
Mar 18, 2026 · Backend Development

Why Java Performance Is Secretly Crushed by Strings: Hidden Memory Killers Most Developers Miss

A production outage caused by OutOfMemoryError revealed that millions of duplicate String objects—originating from HTTP headers, JSON keys, and other common fields—were silently inflating heap usage, and the article shows how to diagnose, optimize, and prevent such hidden String-related memory problems in Java applications.

GCInternJVM
0 likes · 7 min read
Why Java Performance Is Secretly Crushed by Strings: Hidden Memory Killers Most Developers Miss
Java Architect Handbook
Java Architect Handbook
Mar 12, 2026 · Backend Development

How Many Objects Does new String("abc") Actually Create?

This article explains why the interview question "String str = new String(\"abc\")" can create either one or two objects depending on JVM string pool state, detailing the JVM memory model, string pool mechanics, code examples, best practices, and common misconceptions.

JVMObject CreationString
0 likes · 9 min read
How Many Objects Does new String("abc") Actually Create?
Lisa Notes
Lisa Notes
Mar 12, 2026 · Fundamentals

Java Language and Platform: A Beginner’s Guide to Write Once, Run Anywhere

The article explains how Java source files are compiled into bytecode, run on the JVM across Windows, Linux, macOS, and Solaris, and describes the two parts of the Java platform—the virtual machine and the API—highlighting why Java’s “write once, run anywhere” model suits distributed, object‑oriented development.

APIJVMJava
0 likes · 5 min read
Java Language and Platform: A Beginner’s Guide to Write Once, Run Anywhere
MeowKitty Programming
MeowKitty Programming
Mar 10, 2026 · Industry Insights

Why Java Remains the Undying Choice for Enterprise Development

The article analyzes Java's enduring dominance in enterprise software by examining its cross‑platform runtime, extensive ecosystem, continuous language and runtime innovations, performance and security breakthroughs, and the resulting cost, stability, and talent advantages that keep 90% of Fortune 500 companies invested.

Enterprise DevelopmentJVMJava
0 likes · 8 min read
Why Java Remains the Undying Choice for Enterprise Development
Tech Musings
Tech Musings
Mar 5, 2026 · Cloud Native

Why Default Java GC Settings Kill Performance on Kubernetes (And How to Fix It)

Through a controlled experiment with four Spring Boot service groups on Kubernetes, this article shows that relying on Java’s default GC and heap settings can drastically reduce throughput and increase tail latency, especially under higher load, and demonstrates how explicit GC algorithm and Xms/Xmx tuning restores performance.

GCJVMJava
0 likes · 13 min read
Why Default Java GC Settings Kill Performance on Kubernetes (And How to Fix It)
Ops Community
Ops Community
Mar 2, 2026 · Backend Development

How to Supercharge Tomcat 11 on JDK 21: Real‑World JVM, Connection Pool, and Virtual Thread Tuning

This guide walks you through practical performance tuning of Tomcat 11 on JDK 21, covering JVM memory settings, GC selection, connector and thread‑pool optimization, virtual‑thread integration, benchmark scripts, security hardening, high‑availability deployment, and comprehensive monitoring and troubleshooting techniques.

G1 GCJDK21JVM
0 likes · 51 min read
How to Supercharge Tomcat 11 on JDK 21: Real‑World JVM, Connection Pool, and Virtual Thread Tuning
Full-Stack DevOps & Kubernetes
Full-Stack DevOps & Kubernetes
Feb 22, 2026 · Cloud Native

How to Stabilize Java Services on Kubernetes: A 3‑Year Success Story

This article walks through a real‑world Java service on Kubernetes, detailing the initial confidence, recurring OOM and rollout issues, and a multi‑round remediation that introduced container‑aware JVM settings, refined resource requests, OOM dumps, probes, and metrics, ultimately achieving three years of stable operation with lower resource usage.

JVMJavaKubernetes
0 likes · 10 min read
How to Stabilize Java Services on Kubernetes: A 3‑Year Success Story
Ray's Galactic Tech
Ray's Galactic Tech
Jan 31, 2026 · Databases

Master Elasticsearch Performance: Practical Production‑Level Optimization Guide

This guide presents a production‑grade, step‑by‑step approach to boost Elasticsearch performance, covering advanced index design, mapping best practices, query and aggregation tuning, JVM and cluster settings, bulk write optimization, monitoring, and real‑world log‑system scenarios with concrete code examples and configuration snippets.

JVMOptimizationPerformance
0 likes · 9 min read
Master Elasticsearch Performance: Practical Production‑Level Optimization Guide
Xiaohongshu Tech REDtech
Xiaohongshu Tech REDtech
Jan 30, 2026 · Backend Development

How Java Virtual Threads Cut Latency by 31× and Slash CPU Use in Production

This article explains the principles of Java virtual threads, compares them with traditional platform threads, details RedJDK21’s implementation and performance improvements—including up to 31‑fold latency reduction and 24% CPU savings—in large‑scale services at XiaoHongShu, and discusses migration challenges, lock handling, monitoring, and future roadmap.

ConcurrencyJVMJava
0 likes · 29 min read
How Java Virtual Threads Cut Latency by 31× and Slash CPU Use in Production
IT Services Circle
IT Services Circle
Jan 25, 2026 · Interview Experience

Top 17 Java Backend Interview Questions & Answers (2024) – From Collections to JVM

This article combines a detailed Baidu 2026 campus recruitment salary table with an extensive Java interview guide covering collections, concurrency, thread creation, thread pools, I/O models, Spring bean lifecycle, Redis persistence, MySQL isolation levels, MVCC, storage engines, data structures, TCP/UDP differences, JVM memory layout, garbage collection algorithms, and a quicksort example, providing a comprehensive resource for backend developers preparing for technical interviews.

ConcurrencyJVMJava
0 likes · 30 min read
Top 17 Java Backend Interview Questions & Answers (2024) – From Collections to JVM
IT Services Circle
IT Services Circle
Jan 17, 2026 · Backend Development

Kuaishou Campus Salary Insights & Java Backend Interview Guide

The article reveals that Kuaishou’s 2023 campus hires for backend and frontend roles typically earn 40‑50 wan yuan annually, discusses salary trends compared with previous years, and then provides a comprehensive Java backend interview guide covering JVM memory, garbage collectors, CMS GC process, concurrency primitives, and SQL join differences.

BackendConcurrencyGC
0 likes · 15 min read
Kuaishou Campus Salary Insights & Java Backend Interview Guide
MaGe Linux Operations
MaGe Linux Operations
Jan 12, 2026 · Backend Development

Master JVM Tuning on JDK 21: Reduce GC Pauses and Boost Throughput

This comprehensive guide walks you through diagnosing Full GC pauses on a Java 2020 production outage, explains JVM memory structures, compares JDK 21 garbage collectors, and provides step‑by‑step installation, configuration, and tuning instructions for Tomcat, monitoring tools, and real‑world case studies to achieve stable, high‑throughput services.

GCJDK21JVM
0 likes · 33 min read
Master JVM Tuning on JDK 21: Reduce GC Pauses and Boost Throughput
Architect Chen
Architect Chen
Dec 23, 2025 · Backend Development

How to Reduce Java GC Pauses from 200 ms to 20 ms: A Practical Tuning Guide

This guide explains how to systematically analyze and optimize Java garbage‑collection pauses—cutting typical 200 ms stalls down to around 20 ms—by enabling detailed logs, selecting the right collector, tuning heap and generation settings, minimizing allocation, handling large objects, and balancing GC threads with CPU resources.

GCJVMJava
0 likes · 5 min read
How to Reduce Java GC Pauses from 200 ms to 20 ms: A Practical Tuning Guide
Top Architect
Top Architect
Dec 22, 2025 · Backend Development

Graceful Shutdown of Java Applications: kill Commands, JVM Hooks, and Spring Boot Actuator

This article explains how to perform a graceful shutdown of Java services by using Linux kill signals, configuring JVM SignalHandler and Runtime shutdown hooks, releasing resources such as thread pools and sockets, and exposing a Spring Boot Actuator endpoint for controlled termination, complete with code examples and configuration details.

Graceful ShutdownJVMJava
0 likes · 16 min read
Graceful Shutdown of Java Applications: kill Commands, JVM Hooks, and Spring Boot Actuator
macrozheng
macrozheng
Dec 22, 2025 · Backend Development

Why Your Java ThreadPool Threads Aren’t Releasing and How Shutdown Fixes It

The article investigates a Java application that accumulated nearly a thousand waiting threads without high CPU or memory usage, identifies a custom FixedThreadPool as the cause, explains how thread pools become GC roots, and demonstrates that calling shutdown or shutdownNow properly releases both threads and the pool.

ConcurrencyExecutorServiceGarbageCollection
0 likes · 13 min read
Why Your Java ThreadPool Threads Aren’t Releasing and How Shutdown Fixes It
LuTiao Programming
LuTiao Programming
Dec 16, 2025 · Cloud Native

How We Fully Squeezed Docker Performance: A Complete Record of Optimizing 40+ Spring Boot Services

After migrating over 40 Spring Boot microservices to Docker and Kubernetes, the authors encountered slow startups, OOM kills, unexpected latency, and pod restarts, and they detail a step‑by‑step analysis and concrete Dockerfile, JVM, CPU, GC, and Kubernetes configurations that turned the services into fast, stable, and observable production workloads.

GCJVMKubernetes
0 likes · 10 min read
How We Fully Squeezed Docker Performance: A Complete Record of Optimizing 40+ Spring Boot Services
Ray's Galactic Tech
Ray's Galactic Tech
Dec 10, 2025 · Cloud Native

Mastering Java Memory Tuning in Kubernetes: Prevent OOMKilled

Learn how to align Kubernetes pod memory limits with JVM settings using container‑aware parameters, manual calculations, and best‑practice configurations—including MaxRAMPercentage, headroom allocation, metaspace limits, monitoring, and deployment examples—to avoid OOMKilled and ensure stable Java application performance.

DevOpsJVMJava
0 likes · 8 min read
Mastering Java Memory Tuning in Kubernetes: Prevent OOMKilled
Top Architect
Top Architect
Dec 8, 2025 · Backend Development

How Much Heap Memory Does Each SpringBoot HTTP Request Really Use?

This article explains how to measure the exact heap memory consumption of individual SpringBoot HTTP and RPC requests by calculating required memory from request size, configuring JVM GC parameters, creating a JMeter test plan, collecting GC logs, and analyzing results to identify optimization opportunities.

GCJMeterJVM
0 likes · 10 min read
How Much Heap Memory Does Each SpringBoot HTTP Request Really Use?
JavaGuide
JavaGuide
Dec 2, 2025 · Interview Experience

Tuhu Auto’s 2023 Java Backend Salary & Interview Guide: 30k‑33k Packages and Key Technical Topics

The article details Tuhu Auto’s Shanghai Java backend compensation (30k‑33k monthly with 14.4‑month salary and 2‑3w signing bonus), outlines the company’s market position, and provides a comprehensive list of technical and HR interview questions covering JVM, concurrency, MySQL, Spring, DDD, distributed locking, rate limiting, and more.

BackendConcurrencyJVM
0 likes · 7 min read
Tuhu Auto’s 2023 Java Backend Salary & Interview Guide: 30k‑33k Packages and Key Technical Topics
Su San Talks Tech
Su San Talks Tech
Nov 30, 2025 · Backend Development

Does try…catch Really Slow Down Java? Deep Dive and Benchmarks

This article examines whether Java's try…catch blocks affect performance by exploring their historical origins, JVM exception mechanisms, detailed micro‑benchmarks, and modern JVM optimizations, ultimately revealing that only exception creation and throwing incur noticeable costs while normal execution remains virtually unaffected.

BenchmarkJVMJava
0 likes · 19 min read
Does try…catch Really Slow Down Java? Deep Dive and Benchmarks