Tagged articles
5000 articles
Page 38 of 50
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jun 26, 2024 · Backend Development

JVM Class Loading Explained: From Loading to Initialization

This article provides a comprehensive, step‑by‑step explanation of the JVM class‑loading mechanism, covering the five phases—Loading, Verification, Preparation, Resolution, and Initialization—along with diagrams and detailed descriptions of each operation performed by the JVM.

Backend DevelopmentJVMJava
0 likes · 7 min read
JVM Class Loading Explained: From Loading to Initialization
JD Cloud Developers
JD Cloud Developers
Jun 26, 2024 · Backend Development

Understanding Java Heap Memory: Prevent OutOfMemory Errors and Optimize GC

This article explains Java heap memory concepts, garbage collection, common memory issues like leaks and OutOfMemoryError, and outlines the team's quality assurance framework—including left‑shift code review, right‑shift monitoring, and continuous delivery practices—to help prevent and resolve production alerts.

Garbage CollectionHeap MemoryJava
0 likes · 10 min read
Understanding Java Heap Memory: Prevent OutOfMemory Errors and Optimize GC
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 26, 2024 · Backend Development

Master SpringBoot PropertySourcesPlaceholderConfigurer & PropertyOverrideConfigurer

This guide explains how to use SpringBoot's PropertySourcesPlaceholderConfigurer and PropertyOverrideConfigurer to handle missing placeholders, set default values, customize prefixes, load custom property files, and override bean properties—including nested properties—while avoiding common pitfalls like startup errors and NPEs.

BackendJavapropertyoverrideconfigurer
0 likes · 6 min read
Master SpringBoot PropertySourcesPlaceholderConfigurer & PropertyOverrideConfigurer
Architect
Architect
Jun 25, 2024 · Backend Development

Mastering Spring Transaction Hooks: Send Kafka Messages Only After Commit

This article explains how to use Spring's TransactionSynchronizationManager to detect active transactions and register callbacks that asynchronously send Kafka messages after a transaction successfully commits, ensuring data consistency in payment‑system archiving scenarios.

BackendJavaKafka
0 likes · 10 min read
Mastering Spring Transaction Hooks: Send Kafka Messages Only After Commit
Top Architect
Top Architect
Jun 25, 2024 · Backend Development

A Comprehensive Guide to Spring Boot Startup Sequence and Extension Points

This article explains the Spring Boot startup process, enumerates the key extension points and their execution order, demonstrates the sequence with practical code examples, and answers common questions about bean initialization, lifecycle callbacks, and the proper timing for opening RPC, MQ, and HTTP traffic.

ExtensionPointsJavaSpringBoot
0 likes · 16 min read
A Comprehensive Guide to Spring Boot Startup Sequence and Extension Points
Selected Java Interview Questions
Selected Java Interview Questions
Jun 25, 2024 · Databases

Design and Implementation of Table Sharding for Cash Repayment Applications Using ShardingSphere and Spring Boot

This article details the end‑to‑end design, configuration, and code implementation of a 50‑table sharding solution for cash repayment and loan application data, covering database schema planning, historical data migration, backend query adaptation, dynamic switches, scheduled consistency checks, and practical pitfalls encountered with Spring Boot 3 and ShardingSphere.

Backend DevelopmentJavaMySQL
0 likes · 22 min read
Design and Implementation of Table Sharding for Cash Repayment Applications Using ShardingSphere and Spring Boot
Code Ape Tech Column
Code Ape Tech Column
Jun 25, 2024 · Backend Development

COLA Stateless State Machine: A Lightweight, Thread‑Safe Alternative to Spring StateMachine for Java Backend Order Processing

The article explains why Spring StateMachine is heavyweight and thread‑unsafe for high‑concurrency order management, introduces the open‑source COLA stateless state machine as a simpler, lock‑free solution, and provides detailed design principles, core concepts, and extensive Java code examples.

COLAJavaState Machine
0 likes · 13 min read
COLA Stateless State Machine: A Lightweight, Thread‑Safe Alternative to Spring StateMachine for Java Backend Order Processing
Top Architect
Top Architect
Jun 24, 2024 · Backend Development

Understanding Tomcat Configuration and Thread Management in Spring Boot 2.7.10

This article explains the default Tomcat settings bundled with Spring Boot 2.7.10, details core parameters such as accept‑count, max‑connections, thread pool sizes, and timeouts, describes the internal Acceptor and Poller threads, provides configuration examples and testing results, and includes reference links.

JavaSpring BootThreadPool
0 likes · 18 min read
Understanding Tomcat Configuration and Thread Management in Spring Boot 2.7.10
Selected Java Interview Questions
Selected Java Interview Questions
Jun 24, 2024 · Backend Development

Using Alibaba Druid Connection Pool in Spring Boot: Configuration, Monitoring, and Customization

This article provides a comprehensive guide on integrating Alibaba's Druid connection pool into Spring Boot applications, covering its advantages, dependency setup, detailed configuration properties, built‑in filters, monitoring pages, ad removal techniques, and programmatic access to runtime statistics.

BackendConnection PoolDruid
0 likes · 13 min read
Using Alibaba Druid Connection Pool in Spring Boot: Configuration, Monitoring, and Customization
Architect's Guide
Architect's Guide
Jun 24, 2024 · Fundamentals

Comprehensive Guide to Java BigDecimal: Overview, Constructors, Methods, Formatting, and Common Pitfalls

This article explains Java's BigDecimal class, covering its purpose for high‑precision arithmetic, recommended constructors, key arithmetic methods, comparison techniques, formatting with NumberFormat, handling of division exceptions, and best‑practice tips such as using the String constructor and managing immutability.

ArithmeticBigDecimalException
0 likes · 13 min read
Comprehensive Guide to Java BigDecimal: Overview, Constructors, Methods, Formatting, and Common Pitfalls
Code Ape Tech Column
Code Ape Tech Column
Jun 24, 2024 · Backend Development

Applying the Service Locator Pattern in Spring to Decouple File Parsers

The article explains how to replace tightly‑coupled if‑else or switch statements for selecting CSV, JSON, or XML parsers with a Service Locator Pattern in Spring, showing step‑by‑step code examples, configuration, and the resulting adherence to the open‑closed principle.

Factory BeanJavaService Locator
0 likes · 8 min read
Applying the Service Locator Pattern in Spring to Decouple File Parsers
Su San Talks Tech
Su San Talks Tech
Jun 24, 2024 · Fundamentals

How to Break Java’s Parent Delegation Mechanism and Why It Matters

This article explains the purpose of Java's parent delegation class‑loader mechanism, describes its three built‑in loaders, and details common scenarios—such as JNDI, JDBC, Tomcat, and OSGi—where developers intentionally break the delegation to achieve flexibility and isolation.

Custom ClassLoaderJDBCJava
0 likes · 10 min read
How to Break Java’s Parent Delegation Mechanism and Why It Matters
Architect's Tech Stack
Architect's Tech Stack
Jun 24, 2024 · Backend Development

Implementing a FIFO Export Queue for Large‑Scale Data Export in Java

This article explains how to design and implement a fixed-size FIFO export queue in Java to manage large‑scale MySQL data exports, detailing the ExportQueue class, abstract export logic with EasyExcel, a concrete ExportImpl service, and a test controller, while discussing performance considerations and future enhancements.

ExportJavaQueue
0 likes · 11 min read
Implementing a FIFO Export Queue for Large‑Scale Data Export in Java
IT Architects Alliance
IT Architects Alliance
Jun 23, 2024 · Databases

Configuring Druid DataSource Monitoring and Filters in Spring Boot

This guide explains the fundamentals of Druid as a Java database connection pool, how to add required Maven dependencies, configure various Druid properties and filters for SQL and web monitoring, enable slow‑SQL logging, integrate Spring AOP monitoring, remove the default Alibaba advertisement, and retrieve monitoring data via the DruidStatManagerFacade API.

Connection PoolDatabase MonitoringDruid
0 likes · 14 min read
Configuring Druid DataSource Monitoring and Filters in Spring Boot
Cognitive Technology Team
Cognitive Technology Team
Jun 23, 2024 · Fundamentals

Understanding Fail-Fast Iterators and ConcurrentModificationException in Java Collections

The article explains why fail‑fast iterators throw ConcurrentModificationException when a collection is modified during iteration, outlines two common scenarios that trigger the exception, and presents both incorrect and correct Java code examples along with strategies such as avoiding modifications, using synchronization, iterator.remove(), or switching to fail‑safe concurrent collections.

CollectionsConcurrencyConcurrentModificationException
0 likes · 5 min read
Understanding Fail-Fast Iterators and ConcurrentModificationException in Java Collections
Cognitive Technology Team
Cognitive Technology Team
Jun 23, 2024 · Backend Development

Customizing Thread Pools for Java parallelStream to Improve Performance and Isolation

This article explains how Java's parallelStream uses the shared ForkJoinPool, why developers may need to customize the thread pool for better performance and isolation, and provides two approaches—setting the system property and creating a dedicated ForkJoinPool—along with complete code examples and execution results.

ConcurrencyForkJoinPoolJava
0 likes · 4 min read
Customizing Thread Pools for Java parallelStream to Improve Performance and Isolation
Architect
Architect
Jun 22, 2024 · Backend Development

Master Druid: Configure, Monitor, and Optimize Spring Boot Data Sources

This guide explains how to integrate Alibaba's Druid connection pool into Spring Boot, covering basic concepts, Maven dependencies, essential configuration properties, built‑in filters, monitoring pages, SQL and slow‑query logging, Spring AOP monitoring, ad removal, and programmatic access to Druid statistics.

Connection PoolDatabase MonitoringDruid
0 likes · 16 min read
Master Druid: Configure, Monitor, and Optimize Spring Boot Data Sources
IT Services Circle
IT Services Circle
Jun 22, 2024 · Backend Development

Comprehensive Guide to Java Backend Interview Topics: Object Creation, Reflection, Serialization, GC, I/O Multiplexing, and Network Troubleshooting

This article provides an in-depth review of common Java backend interview questions, covering alternative object creation methods, practical reflection scenarios, serialization techniques, garbage‑collection algorithms, I/O multiplexing mechanisms, network port listening, and troubleshooting tips for server‑client communication issues.

Garbage CollectionI/O MultiplexingJava
0 likes · 24 min read
Comprehensive Guide to Java Backend Interview Topics: Object Creation, Reflection, Serialization, GC, I/O Multiplexing, and Network Troubleshooting
Top Architect
Top Architect
Jun 22, 2024 · Backend Development

Understanding Idempotency and Its Implementation with Custom Annotations in Java

This article explains the concept of idempotency, identifies which HTTP requests are naturally idempotent, discusses why idempotency is essential for retries, async callbacks, and message queues, and demonstrates a practical Java implementation using custom annotations, AOP, and Redis for token management.

AOPIdempotencyJava
0 likes · 11 min read
Understanding Idempotency and Its Implementation with Custom Annotations in Java
Su San Talks Tech
Su San Talks Tech
Jun 22, 2024 · Backend Development

How to Speed Up Excel-to-Database Imports with Async and Thread‑Pool Tuning in Java

This article explains the common slow approach of reading Excel files with POI and inserting rows via JDBC, then presents three practical optimizations—caching data, using asynchronous multithreaded reads, and per‑file async processing—along with thread‑pool configuration tips and EasyExcel examples to dramatically reduce import time from minutes to seconds.

AsyncDatabaseExcel
0 likes · 17 min read
How to Speed Up Excel-to-Database Imports with Async and Thread‑Pool Tuning in Java
JD Tech
JD Tech
Jun 21, 2024 · Operations

Deep Dive into pfinder: Architecture, Features, and Bytecode Instrumentation

This article provides a comprehensive technical overview of pfinder, a Java‑based APM system, covering its core concepts, feature set, comparison with other tracing tools, bytecode instrumentation techniques, plugin architecture, trace‑ID propagation across threads, and a simple hot‑deployment implementation.

APMBytecodeInstrumentationJava
0 likes · 22 min read
Deep Dive into pfinder: Architecture, Features, and Bytecode Instrumentation
Top Architect
Top Architect
Jun 21, 2024 · Backend Development

Deep Dive into Spring Boot Startup Sequence and Extension Points

This article provides a comprehensive explanation of Spring Boot's startup process, detailing each lifecycle extension point, the order of execution, common pitfalls with RPC/MQ/HTTP traffic, and includes runnable code examples to help developers master Spring initialization.

DependencyInjectionJavaSpringBoot
0 likes · 15 min read
Deep Dive into Spring Boot Startup Sequence and Extension Points
macrozheng
macrozheng
Jun 21, 2024 · Backend Development

Master MyBatis Dynamic SQL: 9 Essential Tag Techniques for Cleaner Code

This article walks through MyBatis dynamic SQL tags—foreach, concat, choose, selectKey, if, where, trim, set, and sql fragments—explaining their attributes, usage patterns, and common pitfalls, and provides complete XML and Java code examples for each technique.

DatabaseDynamic SQLJava
0 likes · 20 min read
Master MyBatis Dynamic SQL: 9 Essential Tag Techniques for Cleaner Code
Programmer DD
Programmer DD
Jun 21, 2024 · Backend Development

Build a Lightweight Java Logging System with Loki, Loki4j, and Grafana

Learn how to set up a simple yet powerful Java logging solution by installing Loki and Grafana via Docker, configuring Loki4j in a Spring Boot project, and visualizing logs in Grafana dashboards, with step‑by‑step instructions and essential code snippets.

DockerGrafanaJava
0 likes · 8 min read
Build a Lightweight Java Logging System with Loki, Loki4j, and Grafana
Architecture Digest
Architecture Digest
Jun 21, 2024 · Artificial Intelligence

Getting Started with Spring Cloud Alibaba AI: Integrating Tongyi Large Models in Spring Boot

This article introduces Spring Cloud Alibaba AI, explains its relationship to Spring AI, and provides a step‑by‑step tutorial—including Maven setup, dependency configuration, code examples, and sample calls—to integrate Alibaba's Tongyi large‑model services for text QA, image generation, and speech synthesis in a Java Spring Boot application.

AI IntegrationAlibaba CloudJava
0 likes · 11 min read
Getting Started with Spring Cloud Alibaba AI: Integrating Tongyi Large Models in Spring Boot
Code Ape Tech Column
Code Ape Tech Column
Jun 21, 2024 · Backend Development

Debugging a 100 ms Latency Bug in a Spring Boot Channel System Using Arthas

This article documents the step‑by‑step investigation of an unexpected ~100 ms response delay in a Spring Boot channel service, showing how network checks, curl tests, Arthas trace/stack commands, and source analysis revealed a Tomcat‑embed bug caused by Swagger‑ui resources and how upgrading Tomcat resolved the issue.

ArthasBackendJava
0 likes · 14 min read
Debugging a 100 ms Latency Bug in a Spring Boot Channel System Using Arthas
Lobster Programming
Lobster Programming
Jun 21, 2024 · Backend Development

How to Implement Efficient Large File Chunked Download with Java and MinIO

Learn how to download massive files—such as multi‑gigabyte videos—by splitting them into chunks using HTTP Range headers, implementing a Java Spring backend with MinIO storage, multi‑threaded retrieval, and seamless merging, while also handling breakpoint resume and Swagger documentation.

Breakpoint ResumeChunked DownloadHTTP Range
0 likes · 13 min read
How to Implement Efficient Large File Chunked Download with Java and MinIO
Top Architect
Top Architect
Jun 20, 2024 · Backend Development

When and How to Use Null Checks in Java: Best Practices and Alternatives

This article discusses the proper use of null‑checking in Java, distinguishes between valid and invalid null returns, proposes alternatives such as returning empty collections, using assertions or throwing exceptions, and demonstrates the Null Object pattern with concrete code examples while also noting related community resources.

JavaNull Objectdefensive programming
0 likes · 9 min read
When and How to Use Null Checks in Java: Best Practices and Alternatives
Huolala Tech
Huolala Tech
Jun 20, 2024 · Backend Development

Why Our Core Service Crashed: Tomcat Thread Pool Bottlenecks & Custom Executor Pitfalls

On October 27, 2023, a sudden surge in request volume and downstream latency caused the bfe‑customer‑application‑query‑svc to exhaust its Tomcat thread pool, triggering health‑check failures and pod restarts; a deep dive revealed that an ill‑designed custom executor and unchecked thread‑waiting calls created a bottleneck that amplified the outage.

ExecutorIncidentAnalysisJava
0 likes · 36 min read
Why Our Core Service Crashed: Tomcat Thread Pool Bottlenecks & Custom Executor Pitfalls
Code Ape Tech Column
Code Ape Tech Column
Jun 20, 2024 · Backend Development

Implementation of Contract Signing Process Using Chain of Responsibility, Strategy, and Composite Patterns in Java

This article explains a Java-based contract signing system that combines the Chain of Responsibility, Composite, and Strategy design patterns within a Spring Boot application, detailing the processing flow, project structure, key code implementations, and how annotations and enums simplify bean injection.

Chain of ResponsibilityDesign PatternsJava
0 likes · 16 min read
Implementation of Contract Signing Process Using Chain of Responsibility, Strategy, and Composite Patterns in Java
Architect
Architect
Jun 19, 2024 · Information Security

Implementing RSA and AES Hybrid Encryption for API Security in Java

This article describes a real‑world API security incident, explains the fundamentals of asymmetric RSA and symmetric AES encryption, and provides a complete Java implementation—including a hybrid encryption strategy, custom @RequestRSA annotation, Spring AOP decryption aspect, and utility classes—to securely transmit and automatically decrypt request parameters.

AESJavaRSA
0 likes · 23 min read
Implementing RSA and AES Hybrid Encryption for API Security in Java
vivo Internet Technology
vivo Internet Technology
Jun 19, 2024 · Big Data

Understanding BitMap and Roaring BitMap: Principles, Containers, and Java API Usage

The article explains BitMap fundamentals and introduces Roaring BitMap’s compressed container architecture—Array, BitMap, and Run containers—detailing their conversion logic, Java implementation snippets, performance advantages over traditional BitSets, and practical API usage for high‑performance, memory‑efficient big‑data applications.

Big DataContainersJava
0 likes · 18 min read
Understanding BitMap and Roaring BitMap: Principles, Containers, and Java API Usage
Zhuanzhuan Tech
Zhuanzhuan Tech
Jun 19, 2024 · Backend Development

Designing Visual Workflow Orchestration with LiteFlow: From Basic Components to Advanced AST Generation

This article explains how to use the LiteFlow rule‑engine framework to define reusable Java components, express execution flows with EL expressions, design a visual canvas that converts JSON into an abstract syntax tree, generate valid EL code via DFS, and manage workflow updates through push‑pull refresh mechanisms, while also outlining benefits and future plans.

ASTEL expressionJava
0 likes · 18 min read
Designing Visual Workflow Orchestration with LiteFlow: From Basic Components to Advanced AST Generation
Bin's Tech Cabin
Bin's Tech Cabin
Jun 19, 2024 · Fundamentals

Why PhantomReference Can Track GC While WeakReference Can’t in ZGC

Exploring the differences between PhantomReference and WeakReference in Java’s ZGC, this article explains how ZGC’s concurrent phases and the should_drop method use distinct bitmap bits to determine object liveness, revealing why only PhantomReference reliably tracks object reclamation in certain finalization scenarios.

Garbage CollectionJVMJava
0 likes · 11 min read
Why PhantomReference Can Track GC While WeakReference Can’t in ZGC
Top Architect
Top Architect
Jun 19, 2024 · Backend Development

Standardizing Java API Interfaces and Controller Practices with ResultBean and AOP

The article explains common pitfalls in Java API design—such as inconsistent return formats, missing error handling, unnecessary parameters, and complex inputs—then proposes a unified ResultBean response model, controller conventions, and AOP-based logging and exception handling to improve code readability and maintainability.

AOPControllerException Handling
0 likes · 12 min read
Standardizing Java API Interfaces and Controller Practices with ResultBean and AOP
Selected Java Interview Questions
Selected Java Interview Questions
Jun 19, 2024 · Backend Development

PowerJob: Introduction, Installation, and Task Configuration Guide

This article introduces the PowerJob Java distributed scheduling framework, explains its features and task types, provides step‑by‑step installation via JAR and Docker, demonstrates database setup, server and worker configuration, and details how to create and configure scheduled tasks with code examples.

BackendDistributed SchedulingJava
0 likes · 11 min read
PowerJob: Introduction, Installation, and Task Configuration Guide
macrozheng
macrozheng
Jun 19, 2024 · Backend Development

Master CheckStyle in IntelliJ IDEA: Step-by-Step Guide to Clean Java Code

This guide walks you through installing and configuring the CheckStyle plugin in IntelliJ IDEA, explains how to import custom rule sets, and details common style violations such as missing annotations, spacing, naming, formatting, logical errors, and import order, offering practical fixes to keep Java code clean and consistent.

IntelliJ IDEAJavacheckstyle
0 likes · 4 min read
Master CheckStyle in IntelliJ IDEA: Step-by-Step Guide to Clean Java Code
Architecture & Thinking
Architecture & Thinking
Jun 19, 2024 · Artificial Intelligence

Build AI‑Native Apps Quickly with Spring AI: From Chat Models to RAG

This guide explains what an AI‑native application is, compares AI‑native and AI‑based approaches, and walks through Spring AI’s core features—including chat models, prompt templates, function calling, structured output, image generation, embedding, and vector stores—showing step‑by‑step code examples and how to assemble a complete AI‑native app with RAG support.

AI native applicationFunction CallingJava
0 likes · 43 min read
Build AI‑Native Apps Quickly with Spring AI: From Chat Models to RAG
Java Architect Essentials
Java Architect Essentials
Jun 18, 2024 · Backend Development

Resolving MyBatis‑Plus LocalDateTime Conversion Errors by Upgrading MySQL Connector

This article explains why replacing MyBatis with MyBatis‑Plus caused a LocalDateTime conversion exception, identifies the root cause as an outdated mysql‑connector‑java version, and shows how upgrading the connector (to 5.1.37 or later) resolves the issue while providing code examples and debugging steps.

Backend DevelopmentDatabaseJava
0 likes · 16 min read
Resolving MyBatis‑Plus LocalDateTime Conversion Errors by Upgrading MySQL Connector
Bin's Tech Cabin
Bin's Tech Cabin
Jun 17, 2024 · Fundamentals

How Does Java’s FinalReference Keep Objects Alive During GC?

This article explains how the JVM creates and manages FinalReference objects, how they interact with the finalize() method, and how the ZGC and other GC phases discover, revive, and eventually reclaim objects, detailing the roles of ReferenceHandler, FinalizerThread, and related internal data structures.

FinalReferenceFinalizerThreadGarbage Collection
0 likes · 20 min read
How Does Java’s FinalReference Keep Objects Alive During GC?
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 17, 2024 · Backend Development

20 Essential Spring Boot Best Practices to Boost Your Java Backend

This article presents a comprehensive collection of Spring Boot best practices—including package structuring, design patterns, starter usage, dependency management, constructor injection, SLF4J logging, pagination, caching, exception handling, naming conventions, and code quality tools—to help developers build more efficient, maintainable, and robust Java backend applications.

BackendDesign PatternsJava
0 likes · 10 min read
20 Essential Spring Boot Best Practices to Boost Your Java Backend
AI Architecture Hub
AI Architecture Hub
Jun 17, 2024 · Backend Development

Master RabbitMQ: Core Concepts, Messaging Patterns, and Java Implementations

This article explains RabbitMQ’s architecture, details its core components, walks through the five main messaging patterns with visual diagrams, provides complete Java code examples for each pattern, and discusses reliability mechanisms such as acknowledgments, persistence, and practical use‑case scenarios.

Backend DevelopmentJavaMessage queue
0 likes · 22 min read
Master RabbitMQ: Core Concepts, Messaging Patterns, and Java Implementations
FunTester
FunTester
Jun 17, 2024 · Backend Development

Mastering Java CompletableFuture: Simplify Asynchronous Programming

This article explains how Java's CompletableFuture extends traditional concurrency tools with rich APIs for parallel execution, chaining, error handling, and timeout management, providing clear code examples that demonstrate building maintainable asynchronous applications.

AsynchronousCompletableFutureConcurrency
0 likes · 10 min read
Mastering Java CompletableFuture: Simplify Asynchronous Programming
Java Architect Essentials
Java Architect Essentials
Jun 16, 2024 · Backend Development

Using URule Rule Engine with Spring Boot: Installation, Configuration, and Practical Examples

This article introduces the URule rule engine, explains its background, installation steps, core concepts such as variable, constant, parameter, and action libraries, demonstrates both wizard‑style and script‑style rule sets, and provides complete Spring Boot integration code with real‑world usage scenarios.

Backend DevelopmentDecision TableJava
0 likes · 15 min read
Using URule Rule Engine with Spring Boot: Installation, Configuration, and Practical Examples
dbaplus Community
dbaplus Community
Jun 16, 2024 · Backend Development

Building a Scalable MySQL Data Migration Service with Microservices and Design Patterns

This article presents a comprehensive guide to designing and implementing a Java‑based MySQL large‑table migration tool using microservice architecture, multiple design patterns, multithreading, custom logging, and flexible migration modes, complete with code snippets, repository links, and deployment considerations.

Data MigrationDesign PatternsJava
0 likes · 22 min read
Building a Scalable MySQL Data Migration Service with Microservices and Design Patterns
Code Ape Tech Column
Code Ape Tech Column
Jun 16, 2024 · Backend Development

Introducing PowerJob: A Lightweight Distributed Task Scheduling Framework and Its Usage

This article introduces PowerJob, a young yet mature distributed task scheduling framework, explains why it was chosen, details its architecture, high‑availability design, deployment steps, and demonstrates various job types—including standalone, broadcast, map, and MapReduce—along with CRON, fixed‑rate, and fixed‑delay scheduling configurations.

JavaMapReducepowerjob
0 likes · 13 min read
Introducing PowerJob: A Lightweight Distributed Task Scheduling Framework and Its Usage
Wukong Talks Architecture
Wukong Talks Architecture
Jun 16, 2024 · Backend Development

OpenFeign in Spring Cloud: Design Principles, Core Workflow, and Implementation Guide

This article explains the concept of remote calls, compares Feign and OpenFeign, walks through the step‑by‑step setup in a Spring Cloud project, and deeply analyzes the scanning, registration, dynamic proxy creation, MVC annotation parsing, request dispatch, Ribbon load‑balancing, and response handling mechanisms of OpenFeign.

JavaOpenFeignRemote Call
0 likes · 15 min read
OpenFeign in Spring Cloud: Design Principles, Core Workflow, and Implementation Guide
Architect's Guide
Architect's Guide
Jun 16, 2024 · Operations

How to Diagnose and Resolve 900% CPU Spikes in MySQL and Java Processes

This article explains common scenarios that cause MySQL or Java processes to consume 900% CPU, walks through step‑by‑step diagnosis using Linux tools, and provides concrete optimization techniques such as indexing, caching, thread analysis, and code adjustments to bring CPU usage back to normal levels.

CPUJavaLinux
0 likes · 11 min read
How to Diagnose and Resolve 900% CPU Spikes in MySQL and Java Processes
Java Architect Essentials
Java Architect Essentials
Jun 16, 2024 · Backend Development

Performance Comparison of String Concatenation Using '+' Operator vs StringBuilder in Java

This article examines the performance differences between using the '+' operator and StringBuilder for string concatenation in Java, presenting JUnit benchmark tests for simple concatenations and looped concatenations, analyzing compiled bytecode, and concluding that '+' is suitable for simple cases while StringBuilder excels in loops.

JUnitJavaString concatenation
0 likes · 7 min read
Performance Comparison of String Concatenation Using '+' Operator vs StringBuilder in Java
Architect
Architect
Jun 15, 2024 · Fundamentals

Mastering the Chain of Responsibility: From Basics to Real-World Frameworks

This article explains the Chain of Responsibility pattern, compares self‑driven and handler‑driven implementations with Java code, and demonstrates how major frameworks such as Spring Interceptor, Servlet Filter, Dubbo, and Sentinel realize the pattern, followed by practical usage scenarios.

Chain of ResponsibilityDesign PatternsDubbo
0 likes · 25 min read
Mastering the Chain of Responsibility: From Basics to Real-World Frameworks
Pan Zhi's Tech Notes
Pan Zhi's Tech Notes
Jun 15, 2024 · Backend Development

Build a Button‑Level User Permission System Step‑by‑Step with Spring Boot & MyBatisPlus

This tutorial walks through designing a button‑level user permission system—including a five‑table database schema, Spring Boot + MyBatisPlus project setup, code generation, menu CRUD operations, recursive menu tree construction, role‑based permission queries, and annotation‑driven request authorization—complete with runnable code snippets and sample data.

Backend DevelopmentJavaMenu Authorization
0 likes · 18 min read
Build a Button‑Level User Permission System Step‑by‑Step with Spring Boot & MyBatisPlus
IT Services Circle
IT Services Circle
Jun 14, 2024 · Fundamentals

Understanding Floating‑Point Precision and Common Pitfalls in Java

The article explains why comparing floating‑point numbers with == in Java often yields unexpected results, describes the IEEE‑754 representation of float and double, demonstrates common pitfalls through code examples, and provides step‑by‑step methods for converting decimal fractions to binary.

IEEE-754Javabinary conversion
0 likes · 10 min read
Understanding Floating‑Point Precision and Common Pitfalls in Java
Top Architect
Top Architect
Jun 14, 2024 · Backend Development

Comprehensive Guide to Spring MVC, Bean, and Boot Annotations

This article provides a detailed overview of Spring MVC request‑mapping annotations, Spring Bean stereotypes, dependency‑injection and scope annotations, as well as Spring Boot conditional and lifecycle annotations, complete with code examples and usage tips for Java backend development.

JavaSpring Bootannotations
0 likes · 16 min read
Comprehensive Guide to Spring MVC, Bean, and Boot Annotations
Java Tech Enthusiast
Java Tech Enthusiast
Jun 14, 2024 · Fundamentals

Understanding and Using Java BigDecimal for Precise Calculations

Java's BigDecimal class offers arbitrary‑precision decimal arithmetic, requiring method calls like add, subtract, multiply, and divide instead of operators, and should be instantiated via String or valueOf to avoid double‑precision errors, with careful handling of scaling, rounding, formatting, and comparison for exact financial calculations.

ArithmeticBigDecimalJava
0 likes · 14 min read
Understanding and Using Java BigDecimal for Precise Calculations
IT Architects Alliance
IT Architects Alliance
Jun 14, 2024 · Backend Development

In‑Depth Explanation of Spring Boot Startup Sequence and Extension Points

This article thoroughly explains the Spring Boot startup sequence, detailing each lifecycle extension point, common pitfalls with early RPC, HTTP, and MQ traffic, and provides code examples and answers to eleven critical questions to help developers master Spring initialization and avoid runtime failures.

DependencyInjectionJavalifecycle
0 likes · 13 min read
In‑Depth Explanation of Spring Boot Startup Sequence and Extension Points
Su San Talks Tech
Su San Talks Tech
Jun 14, 2024 · Backend Development

Master Java ThreadPoolExecutor: Interview Questions & Deep Dive

This article provides a comprehensive guide to Java thread pools, covering common interview questions, core parameters, execution flow, lock mechanisms, custom queue implementations, rejection policies, best practices, monitoring strategies, and dynamic tuning with DynamicTp, all illustrated with code examples and diagrams.

ConcurrencyInterviewJUC
0 likes · 33 min read
Master Java ThreadPoolExecutor: Interview Questions & Deep Dive
JD Tech
JD Tech
Jun 13, 2024 · Backend Development

Investigation of Log4j2 Asynchronous Logging Memory Growth and Mitigation Strategies

This article analyzes the memory increase observed after enabling Log4j2 asynchronous logging in Java services, examines root causes such as thread‑local reuse and large char[] allocations, and presents configuration and code changes—including disabling thread‑locals and limiting message size—to prevent heap growth and improve performance.

JVMJavaasynchronous logging
0 likes · 18 min read
Investigation of Log4j2 Asynchronous Logging Memory Growth and Mitigation Strategies
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jun 13, 2024 · Backend Development

Comprehensive Guide to Parameter Validation in Spring Boot Backend Development

This article explains why parameter validation is essential in Java web development, compares traditional manual checks with validator libraries, demonstrates practical usage of Bean Validation, Hibernate‑Validator, and Spring Boot starter‑validation, and covers advanced topics such as nested validation, group validation, custom constraints, and the underlying validation mechanism.

BackendCustom AnnotationHibernate Validator
0 likes · 32 min read
Comprehensive Guide to Parameter Validation in Spring Boot Backend Development
Code Ape Tech Column
Code Ape Tech Column
Jun 13, 2024 · Backend Development

Dynamic Switching Between Spring @Scheduled and XXL‑JOB with Automatic Task Registration

This article explains how to flexibly switch between Spring's built‑in @Scheduled tasks and XXL‑JOB implementations without changing existing code, by using conditional auto‑configuration, annotation scanning, task registration, log redirection, and a ready‑to‑use starter, complete with configuration examples and runtime verification.

JavaScheduled TasksSpring Boot
0 likes · 22 min read
Dynamic Switching Between Spring @Scheduled and XXL‑JOB with Automatic Task Registration
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 13, 2024 · Backend Development

Master SpringBoot 3.2.5: 9 Essential Techniques to Access Request Data

This tutorial demonstrates nine practical ways to handle SpringBoot 3.2.5 request data, including Optional‑wrapped parameters, direct Servlet API access, retrieving the authenticated Principal, extracting method and locale, reading InputStream, using HttpEntity for headers and body, building request URIs, handling multipart parts, and passing flash attributes on redirects.

BackendJavamultipart
0 likes · 7 min read
Master SpringBoot 3.2.5: 9 Essential Techniques to Access Request Data
Top Architect
Top Architect
Jun 12, 2024 · Information Security

Understanding RBAC and Implementing Spring Security with JWT

This article explains the fundamentals of Role‑Based Access Control (RBAC), its model classifications, permission concepts, and user‑group usage, then demonstrates how to implement RBAC in a Spring Security application, including in‑memory authentication, JWT integration, JSON login, and password encryption techniques.

AuthenticationJWTJava
0 likes · 17 min read
Understanding RBAC and Implementing Spring Security with JWT
Su San Talks Tech
Su San Talks Tech
Jun 12, 2024 · Backend Development

Master MyBatis Dynamic SQL: 9 Essential Tags and Best Practices

This article explains how to use MyBatis dynamic SQL tags—including foreach, concat, choose, selectKey, if, where, set, trim, and sql fragments—providing clear examples and tips to write concise, error‑free XML mappings for Java backend applications.

Dynamic SQLJavaMyBatis
0 likes · 17 min read
Master MyBatis Dynamic SQL: 9 Essential Tags and Best Practices
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 12, 2024 · Backend Development

Fixing Spring Boot 3 Deadlock: Reproduce, Analyze, and Resolve Custom Event Publishing Issues

This article demonstrates how a custom event published from a constructor in Spring Boot 3.2.5 can cause a deadlock, explains the underlying lock contention, and provides two solutions: using SmartInitializingSingleton to defer publishing and upgrading to Spring 6.2's multithreaded bean initialization.

Javacustom-eventdeadlock
0 likes · 6 min read
Fixing Spring Boot 3 Deadlock: Reproduce, Analyze, and Resolve Custom Event Publishing Issues
Java Architect Essentials
Java Architect Essentials
Jun 11, 2024 · Backend Development

Why Consistent API Responses Matter: A Java Controller & AOP Guide

The article explains common pitfalls in Java API design—such as inconsistent return formats, missing error handling, irrelevant parameters, and improper use of maps or JSON strings—and demonstrates how adopting a unified ResultBean structure together with AOP can improve readability, error management, and testability of backend services.

AOPBackendController
0 likes · 10 min read
Why Consistent API Responses Matter: A Java Controller & AOP Guide
Architect
Architect
Jun 11, 2024 · Backend Development

Mastering Spring Boot Startup: 11 Critical Questions & Execution Order

This article provides a deep technical analysis of Spring Boot's startup process, explains every relevant extension point, demonstrates how to log and verify execution order with sample code, answers eleven common questions about bean initialization, and offers practical guidance on when to safely open RPC, MQ, and HTTP traffic.

AutowiredInitMethodJava
0 likes · 17 min read
Mastering Spring Boot Startup: 11 Critical Questions & Execution Order
Top Architect
Top Architect
Jun 11, 2024 · Backend Development

Dynamic Class Loading, Registration, and Unloading for Data Governance Tasks in a Spring‑XXL‑Job Service

This article explains how to design a plug‑in architecture for a data‑governance service by using a custom URLClassLoader, Spring bean registration, and XXL‑Job integration to dynamically load, start, stop, upgrade, and unload individual governance tasks without restarting the whole service, and also shows how to persist the configuration in local YAML or Nacos.

DynamicLoadingJavaXXL-JOB
0 likes · 22 min read
Dynamic Class Loading, Registration, and Unloading for Data Governance Tasks in a Spring‑XXL‑Job Service
Java Tech Enthusiast
Java Tech Enthusiast
Jun 11, 2024 · Backend Development

Hot‑Pluggable AOP: Dynamic Advice Management in Spring

The article shows how to implement a hot‑plug AOP system in Spring that lets users enable or disable logging at runtime by scanning, registering, and deregistering Advice/Advisor/Pointcut beans through the bean factory, demonstrated with a REST endpoint that adds or removes a logging interceptor.

BackendDynamic PluginJava
0 likes · 9 min read
Hot‑Pluggable AOP: Dynamic Advice Management in Spring
Java Architect Essentials
Java Architect Essentials
Jun 10, 2024 · Backend Development

Designing an Excellent Controller Layer in Java Spring

This article explains how to build a clean, maintainable Controller layer in Java Spring by separating responsibilities, using unified response structures, applying ResponseBodyAdvice for automatic wrapping, implementing parameter validation with JSR‑303, and handling custom exceptions through centralized advice, illustrated with comprehensive code examples.

ControllerJavaResponseBodyAdvice
0 likes · 15 min read
Designing an Excellent Controller Layer in Java Spring
JavaEdge
JavaEdge
Jun 10, 2024 · Backend Development

How Nacos Implements Long Polling with AsyncContext – A Deep Dive

This article walks through Nacos's LongPollingService source code, showing how it extracts headers, calculates timeouts, detects configuration changes, enforces connection limits, and uses Servlet 3.0 AsyncContext to handle long‑polling without blocking threads.

AsyncContextBackend DevelopmentJava
0 likes · 6 min read
How Nacos Implements Long Polling with AsyncContext – A Deep Dive
Architect
Architect
Jun 10, 2024 · Backend Development

How to Build a Scalable Front‑Back‑Separated Captcha Login with Spring Boot and Redis

This article walks through the problem of traditional session‑based captcha login, compares it with a modern front‑back‑separated architecture, and provides a step‑by‑step implementation using Spring Boot, Kaptcha, and Redis, including full code snippets, configuration classes, and flow diagrams.

CaptchaFrontBackSeparationJava
0 likes · 12 min read
How to Build a Scalable Front‑Back‑Separated Captcha Login with Spring Boot and Redis
Cognitive Technology Team
Cognitive Technology Team
Jun 10, 2024 · Backend Development

Gracefully Shutting Down a Thread Pool in Java

To gracefully shut down a Java thread pool, use ExecutorService's shutdown() to reject new tasks, awaitTermination() to wait for running tasks with optional timeout, handle exceptions, and optionally invoke shutdownNow() for forced termination, as illustrated by code examples from Dubbo3 and RocketMQ.

ConcurrencyExecutorServiceGracefulShutdown
0 likes · 4 min read
Gracefully Shutting Down a Thread Pool in Java
Cognitive Technology Team
Cognitive Technology Team
Jun 10, 2024 · Backend Development

Recursive Update Bug in ConcurrentHashMap.computeIfAbsent Causing Infinite Loop and CPU Spike

The article explains a bug in Java's ConcurrentHashMap.computeIfAbsent that can cause recursive updates and infinite loops, leading to CPU spikes, and shows that newer Java versions throw an IllegalStateException while recommending avoiding nested computeIfAbsent/putIfAbsent calls, with a code example.

BackendConcurrentHashMapJava
0 likes · 3 min read
Recursive Update Bug in ConcurrentHashMap.computeIfAbsent Causing Infinite Loop and CPU Spike
Architect
Architect
Jun 9, 2024 · Backend Development

Using MDC and TraceId for Log Correlation in Java Applications

This article explains how to use SLF4J MDC together with a TraceId header to correlate logs across threads, services, and distributed tracing tools like SkyWalking, providing code examples for filters, Feign interceptors, thread‑pool adapters, and Logback configuration.

JavaLoggingMDC
0 likes · 15 min read
Using MDC and TraceId for Log Correlation in Java Applications
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jun 9, 2024 · Backend Development

Understanding RequestContextHolder Issues in Multithreaded Spring MVC Applications

This article explains why RequestContextHolder fails to retrieve the HttpServletRequest in a multithreaded Spring MVC environment, demonstrates the problem with a concrete example, analyzes the underlying thread‑local handling of request attributes, and clarifies the default non‑inheritable behavior that leads to null requests.

JavaRequestContextHolderServletRequestAttributes
0 likes · 8 min read
Understanding RequestContextHolder Issues in Multithreaded Spring MVC Applications
Top Architect
Top Architect
Jun 8, 2024 · Backend Development

Comprehensive Guide to Java BigDecimal: Overview, Constructors, Methods, Formatting, Exceptions, and Utilities

This article provides an in‑depth tutorial on Java's BigDecimal class, covering its purpose, common constructors, essential arithmetic methods, comparison techniques, formatting with NumberFormat, handling of division exceptions, and a utility class offering precise add, subtract, multiply, divide, rounding, and comparison operations.

ArithmeticBigDecimalJava
0 likes · 16 min read
Comprehensive Guide to Java BigDecimal: Overview, Constructors, Methods, Formatting, Exceptions, and Utilities