Java Tech Workshop
Author

Java Tech Workshop

Focused on Java backend technologies, sharing fundamentals, multithreading, JVM, the Spring ecosystem, microservices, distributed systems, high concurrency, source‑code analysis, and practical experience. Continuously delivers high‑quality original content, interview guides, and learning roadmaps to help Java developers progress from beginner to advanced, enhancing technical skills and core competitiveness.

160
Articles
0
Likes
885
Views
0
Comments
Recent Articles

Latest from Java Tech Workshop

100 recent articles max
Java Tech Workshop
Java Tech Workshop
May 30, 2026 · Backend Development

Implement SpringBoot API Rate Limiting with Gateway and Redis

The article explains why placing rate limiting at the Spring Cloud Gateway layer, using Redis and Lua scripts, provides a high‑performance, distributed defense against traffic spikes, and walks through three algorithms, configuration parameters, code examples, and custom error handling for robust backend services.

LuaRate LimitingRedis
0 likes · 8 min read
Implement SpringBoot API Rate Limiting with Gateway and Redis
Java Tech Workshop
Java Tech Workshop
May 29, 2026 · Backend Development

Why Use Spring Cloud Gateway? A Beginner’s Guide to Building a SpringBoot API Gateway

In a micro‑service architecture, a centralized gateway eliminates the need for front‑ends to call dozens of services by handling authentication, rate‑limiting, logging, CORS, and security, and Spring Cloud Gateway—built on WebFlux and Netty—offers a non‑blocking, high‑throughput alternative to Zuul with detailed configuration and code examples for production use.

API GatewayNettyRate Limiting
0 likes · 18 min read
Why Use Spring Cloud Gateway? A Beginner’s Guide to Building a SpringBoot API Gateway
Java Tech Workshop
Java Tech Workshop
May 28, 2026 · Backend Development

SpringBoot Service Registration & Discovery: Comparing Nacos, Consul, and Eureka

This article explains the core principles of service registration and discovery in SpringBoot microservices, analyzes CAP trade‑offs, compares Eureka, Consul, and Nacos in terms of features, health checks, and fault tolerance, and provides complete code samples and practical recommendations for production use.

CAP theoremConsulEureka
0 likes · 21 min read
SpringBoot Service Registration & Discovery: Comparing Nacos, Consul, and Eureka
Java Tech Workshop
Java Tech Workshop
May 27, 2026 · Backend Development

SpringBoot Consumer Concurrency: Tuning Thread Pools to Prevent MQ Backlog

In distributed systems, MQ message pile‑up, consumption delays, and service stalls are often caused by poorly configured consumer thread pools, and this article explains the underlying concurrency model, core parameters, custom pool setup, tuning formulas, common pitfalls, and best‑practice configurations for SpringBoot RabbitMQ consumers.

PrefetchRabbitMQSpringBoot
0 likes · 13 min read
SpringBoot Consumer Concurrency: Tuning Thread Pools to Prevent MQ Backlog
Java Tech Workshop
Java Tech Workshop
May 26, 2026 · Backend Development

How to Implement RabbitMQ Fanout Broadcast in Spring Boot

This guide explains the fanout (publish/subscribe) pattern in RabbitMQ, compares it with other exchange types, clarifies common misconceptions, and provides a step‑by‑step Spring Boot implementation—including configuration, producer, multiple consumers, testing, and best‑practice recommendations.

Message BroadcastingPublish‑SubscribeRabbitMQ
0 likes · 10 min read
How to Implement RabbitMQ Fanout Broadcast in Spring Boot
Java Tech Workshop
Java Tech Workshop
May 25, 2026 · Backend Development

Ensuring SpringBoot Message Idempotency to Prevent Duplicate Consumption

The article analyzes why duplicate consumption is inevitable in MQ systems, defines message idempotency, and presents four practical solutions—including Redis SETNX, database unique indexes, state‑machine with optimistic locking, and global unique constraints—along with their pros, cons, and best‑practice guidelines for SpringBoot applications.

JavaMessage IdempotencyOptimistic Lock
0 likes · 13 min read
Ensuring SpringBoot Message Idempotency to Prevent Duplicate Consumption
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 22, 2026 · Backend Development

SpringBoot Delayed Messaging with RabbitMQ’s Delayed Exchange

The article explains why delayed messaging is a common requirement in modern applications, compares the native dead‑letter‑queue TTL method with the RabbitMQ x‑delayed‑message plugin, and provides step‑by‑step SpringBoot integration, configuration, producer/consumer code, testing instructions, and practical cautions.

RabbitMQSpringBootdead letter queue
0 likes · 13 min read
SpringBoot Delayed Messaging with RabbitMQ’s Delayed Exchange
Java Tech Workshop
Java Tech Workshop
May 22, 2026 · Fundamentals

Proper Use of Java's Scanner Class for Console Input

This article explains the Scanner class in java.util, outlines a four‑step usage pattern, details its API for reading and validation, addresses the common nextInt/nextLine line‑skip issue with two reliable solutions, and provides best‑practice guidelines and example code to avoid resource leaks and input errors.

Console InputIOInput Validation
0 likes · 10 min read
Proper Use of Java's Scanner Class for Console Input