Java Architect Handbook
Author

Java Architect Handbook

Focused on Java interview questions and practical article sharing, covering algorithms, databases, Spring Boot, microservices, high concurrency, JVM, Docker containers, and ELK-related knowledge. Looking forward to progressing together with you.

148
Articles
0
Likes
427
Views
0
Comments
Recent Articles

Latest from Java Architect Handbook

100 recent articles max
Java Architect Handbook
Java Architect Handbook
May 26, 2026 · Backend Development

How to Prevent Duplicate Consumption in RabbitMQ? 5 Practical Solutions for Interviews

The article explains why RabbitMQ may deliver the same message multiple times, emphasizes that business‑level idempotency is required, and compares five concrete deduplication approaches—unique message ID with a dedup table, database unique constraints, Redis SETNX, optimistic locking, and state‑machine design—detailing their implementation, suitable scenarios, and trade‑offs.

DeduplicationRedis SETNXduplicate-consumption
0 likes · 13 min read
How to Prevent Duplicate Consumption in RabbitMQ? 5 Practical Solutions for Interviews
Java Architect Handbook
Java Architect Handbook
May 23, 2026 · Backend Development

How to Preheat Cache During Spring Startup – Interview Guide

The article explains four ways to preheat caches in Spring during startup, recommends CommandLineRunner/ApplicationRunner as the safest option, and discusses timing, async handling, error protection, and distributed‑lock strategies to avoid common pitfalls in production environments.

CommandLineRunnerSpringSpring Boot
0 likes · 13 min read
How to Preheat Cache During Spring Startup – Interview Guide
Java Architect Handbook
Java Architect Handbook
May 22, 2026 · Backend Development

How Does RabbitMQ Ensure No Message Loss? Producer Confirms, Persistence, and Manual ACK Explained

The article breaks down RabbitMQ's three‑stage message flow—producer to broker, broker persistence, and broker to consumer—detailing how Publisher Confirm, durable exchanges/queues/messages, and manual consumer acknowledgments together guarantee reliability while discussing performance trade‑offs, high‑availability clustering, and common interview follow‑up questions.

Dead Letter QueueMessage reliabilityQuorum Queue
0 likes · 14 min read
How Does RabbitMQ Ensure No Message Loss? Producer Confirms, Persistence, and Manual ACK Explained
Java Architect Handbook
Java Architect Handbook
May 21, 2026 · Backend Development

How to Diagnose Frequent Full GC in Production Systems? (Second Interview at Taobao)

The article explains why Full GC should be minimized, defines normal versus abnormal GC frequencies, outlines the root causes of Full GC, and provides a step‑by‑step troubleshooting workflow with concrete code snippets, monitoring commands and real‑world examples for Java backend engineers.

Full GCGarbage CollectionJVM performance
0 likes · 13 min read
How to Diagnose Frequent Full GC in Production Systems? (Second Interview at Taobao)
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.

DaemonThreadJVMJava
0 likes · 10 min read
What Is a Daemon Thread and How Does It Differ From a Normal Thread?
Java Architect Handbook
Java Architect Handbook
Apr 29, 2026 · Backend Development

How Many Ways Can You Create a ThreadPool in Java? Interview Essentials

The article explains the four ways to create a thread pool in Java, why the Executors factory methods are unsafe for production, how to manually configure ThreadPoolExecutor with its seven parameters, and compares scheduled and ForkJoin pools while providing interview‑focused Q&A and practical configuration formulas.

ExecutorsForkJoinPoolJava
0 likes · 14 min read
How Many Ways Can You Create a ThreadPool in Java? Interview Essentials
Java Architect Handbook
Java Architect Handbook
Apr 28, 2026 · Backend Development

SpringBoot + Disruptor: Achieving 6 Million Orders per Second with Ultra‑Fast Concurrency

This article explains why Disruptor—a lock‑free, high‑throughput Java queue from LMAX—was chosen over traditional brokers, details its core concepts such as RingBuffer, Sequence, and WaitStrategy, and provides a step‑by‑step SpringBoot demo that can handle up to six million orders per second without pressure.

DisruptorJavaMessage Queue
0 likes · 13 min read
SpringBoot + Disruptor: Achieving 6 Million Orders per Second with Ultra‑Fast Concurrency
Java Architect Handbook
Java Architect Handbook
Apr 25, 2026 · Backend Development

Why MyBatis Mapper Interfaces Don't Need Implementation Classes

MyBatis generates mapper implementations at runtime using JDK dynamic proxies; the proxy intercepts interface calls, builds a statementId from the interface’s fully‑qualified name and method name, looks up the corresponding MappedStatement via the namespace‑id convention, and delegates execution to SqlSession, eliminating the need for a concrete class.

JDK Dynamic ProxyJavaMapperMethod
0 likes · 13 min read
Why MyBatis Mapper Interfaces Don't Need Implementation Classes
Java Architect Handbook
Java Architect Handbook
Apr 24, 2026 · Interview Experience

Why Use Coroutines When Threads Already Exist? Java Interview Deep Dive

An interview‑focused analysis explains how processes allocate resources, threads handle CPU scheduling, and coroutines act as lightweight user‑mode threads, comparing their creation costs, switching overhead, and memory usage, and highlights Java 19/21 virtual threads as the Java implementation of coroutines.

JavaVirtual Threadsconcurrency
0 likes · 13 min read
Why Use Coroutines When Threads Already Exist? Java Interview Deep Dive