Tagged articles
1744 articles
Page 7 of 18
Su San Talks Tech
Su San Talks Tech
Feb 1, 2024 · Backend Development

Boost Your Java Backend: Essential Spring Utility Classes Explained

This article introduces the most useful Spring framework utility classes—including Assert, StringUtils, CollectionUtils, ObjectUtils, ClassUtils, BeanUtils, ReflectionUtils, Base64Utils, SerializationUtils, HttpStatus, and HtmlUtils—providing clear explanations, code examples, and practical tips to improve development efficiency and code quality.

Utility Classesbackend-developmentjava
0 likes · 16 min read
Boost Your Java Backend: Essential Spring Utility Classes Explained
Architect
Architect
Jan 31, 2024 · Backend Development

How to Build Distributed Multi‑Rule Rate Limiting with Redis and Spring AOP

This article explains how to implement multi‑rule rate limiting in a distributed Java application using Redis, covering String‑based counters, Zset timestamp storage, Lua scripts for atomic checks, custom @RateLimiter annotations, key generation logic, and an AOP interceptor that enforces the limits.

Distributed SystemsLuaaop
0 likes · 12 min read
How to Build Distributed Multi‑Rule Rate Limiting with Redis and Spring AOP
Architect
Architect
Jan 29, 2024 · Backend Development

How to Implement Robust Request Debounce in Java Backend with Redis and Redisson

This article explains why request debounce is essential for preventing duplicate submissions, outlines which APIs need protection, and walks through two distributed‑lock solutions—shared Redis cache and Redisson—showing concrete annotations, key‑generation logic, and Spring‑AOP code with full test results.

BackendDebouncedistributed-lock
0 likes · 19 min read
How to Implement Robust Request Debounce in Java Backend with Redis and Redisson
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 29, 2024 · Backend Development

Why Spring Transactions Fail and How to Fix Them

This article examines common scenarios that cause Spring transaction management to fail—such as non‑public methods, swallowed exceptions, incorrect rollback settings, self‑invocation, final methods, wrong propagation, asynchronous threads, unsupported database engines, and misuse of @Transactional—and provides concrete code‑level solutions to ensure reliable transactional behavior.

backend-developmentjavaspring
0 likes · 10 min read
Why Spring Transactions Fail and How to Fix Them
Architecture Digest
Architecture Digest
Jan 28, 2024 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis

This article demonstrates how to build a Spring‑based API rate‑limiting solution using an Interceptor and Redis, covering the basic principle, project setup, code implementation, custom annotation with reflection for flexible limits, handling path‑parameter keys, real‑IP acquisition, and practical considerations for production use.

BackendInterceptorjava
0 likes · 18 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis
Architect
Architect
Jan 26, 2024 · Backend Development

Dynamic Hot‑Pluggable AOP in Spring: Managing Advice at Runtime

This article explains how to implement a hot‑pluggable AOP mechanism in Spring by dynamically adding or removing Advice through custom endpoints and event listeners, covering core concepts, implementation code, a demonstration, and best‑practice considerations for backend developers.

AdviceDynamic Pluginaop
0 likes · 10 min read
Dynamic Hot‑Pluggable AOP in Spring: Managing Advice at Runtime
Su San Talks Tech
Su San Talks Tech
Jan 25, 2024 · Backend Development

Six Powerful Strategies for Implementing Scheduled Tasks in Java

This article reviews six practical approaches for scheduling recurring jobs in Java—including custom threads, JDK ScheduledExecutorService, Spring @Scheduled, Quartz, Elastic‑Job, and XXL‑JOB—highlighting their usage, configuration steps, and considerations for clustering and concurrency.

Distributed SchedulingQuartzScheduled Tasks
0 likes · 6 min read
Six Powerful Strategies for Implementing Scheduled Tasks in Java
Java High-Performance Architecture
Java High-Performance Architecture
Jan 24, 2024 · Backend Development

8 Powerful Ways to Implement Asynchronous Execution in Java

Understanding asynchronous execution in Java can dramatically reduce latency for tasks such as sending SMS, emails, or updating data, and this article walks through eight practical implementations—from raw Threads and Futures to Spring @Async, ApplicationEvent, message queues, ThreadUtil, and Guava ListenableFuture—complete with code samples and best‑practice tips.

AsynchronousCompletableFutureGuava
0 likes · 13 min read
8 Powerful Ways to Implement Asynchronous Execution in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 20, 2024 · Backend Development

Mastering Spring’s Event System: Decoupling, Asynchronous Handling, and Generic Events

This article explains Spring’s event mechanism, covering its observer‑based design, benefits such as decoupling and asynchronous handling, standard framework events, and advanced generic event techniques using subclassing or ResolvableTypeProvider to achieve type‑safe, flexible event publishing.

Generic TypesObserver Patternbackend-development
0 likes · 7 min read
Mastering Spring’s Event System: Decoupling, Asynchronous Handling, and Generic Events
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 16, 2024 · Backend Development

Spring 6: HTTP Interfaces, RestClient, i18n ProblemDetail, Virtual Threads

This guide walks through Spring 6’s new capabilities—including Java 17 baseline, Jakarta namespace migration, HTTP interface proxies with @HttpExchange, WebClient integration via JDK HttpClient, internationalized ProblemDetail handling, the RestClient API, and executing asynchronous tasks on virtual threads—all demonstrated with concise code examples.

HTTPProblemDetailRestClient
0 likes · 7 min read
Spring 6: HTTP Interfaces, RestClient, i18n ProblemDetail, Virtual Threads
Java Captain
Java Captain
Jan 15, 2024 · Backend Development

Custom Exception Handling for Feign Calls in Spring Distributed Services

This article explains how to implement unified, user‑friendly exception handling for Feign‑based service calls in a Spring distributed architecture by customizing ErrorDecoder, defining result objects, and using global @ControllerAdvice to return clear error codes and messages to front‑end users.

BackendException Handlingjava
0 likes · 12 min read
Custom Exception Handling for Feign Calls in Spring Distributed Services
Java Captain
Java Captain
Jan 15, 2024 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis

This article explains how to prevent API abuse by using a Spring Interceptor combined with Redis to count requests per IP and URI, demonstrates step‑by‑step code implementations, discusses custom annotations, mapping rules, time‑window challenges, path‑parameter handling, and real‑IP extraction for robust backend rate limiting.

BackendInterceptorannotation
0 likes · 15 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis
Architect
Architect
Jan 13, 2024 · Backend Development

Mastering API Retry Strategies in Java: 8 Proven Techniques

This article walks through eight practical ways to implement retry mechanisms for remote API calls in Java, covering simple loops, recursion, Apache HttpClient settings, Spring Retry, Resilience4j, custom utilities, asynchronous thread‑pool retries, and message‑queue based retries, while highlighting trade‑offs and best‑practice guidelines.

HttpClientRetrybest practices
0 likes · 18 min read
Mastering API Retry Strategies in Java: 8 Proven Techniques
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 12, 2024 · Backend Development

Unlock Spring’s Hidden Power: Essential Utility Classes for Faster Backend Development

This article explores Spring 5.3.23’s core utility classes—including ID generators, concurrent LRU cache, concurrency throttling, StopWatch timing, digest calculation, method invocation, reflection helpers, route matching, collection utilities, and placeholder parsing—providing code examples, usage guidelines, and best practices to boost backend development efficiency.

CacheID Generatorconcurrency
0 likes · 12 min read
Unlock Spring’s Hidden Power: Essential Utility Classes for Faster Backend Development
Selected Java Interview Questions
Selected Java Interview Questions
Jan 11, 2024 · Backend Development

Design and Implementation of a Flexible Data Permission System in Java

This article presents a comprehensive design and implementation of a customizable data permission framework for Java backend applications, detailing the requirements, rule table structure, strategy pattern handling, custom annotations, AOP integration, and practical examples with full source code snippets.

Custom AnnotationData PermissionMyBatisPlus
0 likes · 22 min read
Design and Implementation of a Flexible Data Permission System in Java
Java High-Performance Architecture
Java High-Performance Architecture
Jan 9, 2024 · Backend Development

How to Build a Flexible API Rate‑Limiting System with Spring Interceptor and Redis

This article demonstrates step‑by‑step how to prevent API abuse in a Spring MVC application by using an Interceptor combined with Redis for counting requests, customizing limits per endpoint through annotations and reflection, handling mapping rules, path‑parameter challenges, and obtaining the real client IP.

InterceptorReflectionannotation
0 likes · 19 min read
How to Build a Flexible API Rate‑Limiting System with Spring Interceptor and Redis
Java Architect Essentials
Java Architect Essentials
Jan 8, 2024 · Backend Development

Using MapStruct for Efficient Java Bean Copying and Mapping

This article explains why manual property copying in Java is inefficient, compares several runtime bean‑copy utilities, and demonstrates how MapStruct provides a compile‑time, type‑safe, high‑performance solution for shallow and deep object mapping, including handling of collections and ignored fields.

Object Copybean-mappingcglib
0 likes · 13 min read
Using MapStruct for Efficient Java Bean Copying and Mapping
Java Tech Enthusiast
Java Tech Enthusiast
Jan 8, 2024 · Backend Development

Migrating from RestTemplate to Spring WebClient: Benefits and Code Samples

Spring developers should replace the deprecated RestTemplate with the reactive WebClient, which offers non‑blocking I/O, a fluent functional API, streaming support, richer error handling and configurable timeouts, while still allowing synchronous calls via block(), as demonstrated by practical Spring Boot 3 code examples.

HTTPjavareactive
0 likes · 11 min read
Migrating from RestTemplate to Spring WebClient: Benefits and Code Samples
vivo Internet Technology
vivo Internet Technology
Jan 3, 2024 · Backend Development

Understanding Spring Transaction Propagation Mechanisms

Spring’s transaction propagation defines seven behaviors—REQUIRED, SUPPORTS, MANDATORY, REQUIRES_NEW, NOT_SUPPORTED, NEVER, and NESTED—detailing how methods join, create, suspend, or nest transactions, and the article explains each type, practical scenarios, and how proper selection ensures atomicity, consistency, and correct rollback handling.

javapropagationspring
0 likes · 9 min read
Understanding Spring Transaction Propagation Mechanisms
HomeTech
HomeTech
Jan 3, 2024 · Backend Development

Design and Implementation of a Generic Data‑Change Tracking and Dynamic Display System

This article presents a comprehensive solution for decoupled operation‑log recording in multi‑project backend systems, detailing the design goals, technology choices such as AOP, annotations, SpringEL and MongoDB, the system architecture, implementation steps, a practical case study, and future enhancements.

MongoDBannotationaop
0 likes · 11 min read
Design and Implementation of a Generic Data‑Change Tracking and Dynamic Display System
IT Xianyu
IT Xianyu
Jan 2, 2024 · Backend Development

Ensuring Transaction Consistency in Multithreaded Spring Applications Using Programmatic Transactions

This article explains how to execute two dependent tasks in parallel, guarantee their successful completion before a final step, and maintain transaction consistency across multiple threads in Spring by using CompletableFuture, programmatic transaction management, and a custom transaction‑resource copying mechanism.

CompletableFutureProgrammaticTransactionjava
0 likes · 18 min read
Ensuring Transaction Consistency in Multithreaded Spring Applications Using Programmatic Transactions
JD Retail Technology
JD Retail Technology
Jan 2, 2024 · Backend Development

Optimizing Spring Application Startup Time and Performance: Analysis, Tools, and Practical Steps

This article examines the causes of slow startup in large Spring applications, presents visual analysis techniques and a toolbox—including Arthas, JVM Sandbox, Async Profiler, and Spring Startup Analyzer—and provides concrete installation, configuration, and optimization procedures that can reduce startup time by 70‑80% while improving development efficiency and resource utilization.

BackendJar SlimmingPerformance
0 likes · 14 min read
Optimizing Spring Application Startup Time and Performance: Analysis, Tools, and Practical Steps
DaTaobao Tech
DaTaobao Tech
Dec 29, 2023 · Backend Development

Design Patterns and Practices for Fast, Stable Development in Taobao Innovation Projects

The article outlines how the Taobao “Calm Guard” project accelerates rapid‑iteration development by employing reusable patterns—including a Spring‑based Strategy registry, a hierarchical fatigue‑control framework, generic cache upsert via functional parameters, and precise AOP aspects—resulting in faster, more stable, and maintainable code.

Design PatternsStrategy Patternaop
0 likes · 29 min read
Design Patterns and Practices for Fast, Stable Development in Taobao Innovation Projects
Architect
Architect
Dec 28, 2023 · Backend Development

How to Implement Distributed Multi‑Rule Rate Limiting with Redis and Lua

This article explains how to design and implement a distributed rate‑limiting solution that supports multiple concurrent rules—such as per‑minute and per‑hour limits—by analyzing the shortcomings of simple string counters, introducing atomic Lua scripts and Zset structures, and providing complete Java annotation and AOP code examples.

Distributed SystemsLuaaop
0 likes · 13 min read
How to Implement Distributed Multi‑Rule Rate Limiting with Redis and Lua
JD Tech
JD Tech
Dec 28, 2023 · Backend Development

Optimizing Spring Application Startup Speed and Performance: Analysis, Tools, and Best Practices

This article explores the challenges of slow Spring application startup in large Java projects, presents detailed analysis techniques, visualizations, and a suite of tools—including Spring Startup Analyzer, Arthas, and Async Profiler—to identify bottlenecks, and provides step‑by‑step optimization methods such as bean lazy loading, jar slimming, and configuration tweaks that can reduce startup time by up to 80% while improving resource utilization and deployment efficiency.

Profilinglazy loadingspring
0 likes · 16 min read
Optimizing Spring Application Startup Speed and Performance: Analysis, Tools, and Best Practices
Architecture Digest
Architecture Digest
Dec 28, 2023 · Backend Development

Step-by-Step Alipay Payment Integration in Java with Spring Boot

This guide walks through configuring the Alipay sandbox, adding Maven dependencies, setting up application.yml, implementing Java configuration classes, creating controller endpoints for payment, handling asynchronous callbacks, processing refunds, and using RabbitMQ delayed queues to auto‑cancel unpaid orders, all with complete code examples.

AlipayBackendPayment Integration
0 likes · 12 min read
Step-by-Step Alipay Payment Integration in Java with Spring Boot
JD Cloud Developers
JD Cloud Developers
Dec 27, 2023 · Backend Development

7 Hidden Pitfalls of Spring BeanUtils.copyProperties You Must Avoid

This article explains seven subtle issues when using Spring's BeanUtils.copyProperties—such as type mismatches, null overwrites, wrong imports, inner‑class copying failures, shallow copy side effects, and performance drawbacks—providing code examples and recommendations to avoid them.

BackendBeanUtilsCopyProperties
0 likes · 10 min read
7 Hidden Pitfalls of Spring BeanUtils.copyProperties You Must Avoid
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 27, 2023 · Backend Development

How @Nullable Prevents Spring Bean Injection Failures

Learn how to use Spring's @Nullable annotation (or its Java equivalents) to safely handle missing beans during dependency injection, avoiding startup errors, with code examples, underlying mechanism details, and comparisons to other approaches like required=false, Optional, and ObjectFactory.

@Nullablebackend-developmentdependency-injection
0 likes · 6 min read
How @Nullable Prevents Spring Bean Injection Failures
Architect
Architect
Dec 25, 2023 · Backend Development

Implementing API Idempotency Checks with Design Patterns in Java

This article explains the concept of idempotency, why it is essential for API reliability, and demonstrates four practical idempotency strategies—including database primary keys, optimistic locking, token validation, and Redis caching—implemented via custom annotations and the Strategy pattern in a Spring‑Boot Java project.

APIDesign PatternsIdempotency
0 likes · 23 min read
Implementing API Idempotency Checks with Design Patterns in Java
phodal
phodal
Dec 25, 2023 · Artificial Intelligence

Can AI Write Perfect Unit Tests? Inside AutoDev’s Prompt‑Fine‑Tune Pipeline

This article explains how the open‑source AutoDev plugin builds an end‑to‑end AI‑assisted coding solution that fine‑tunes open LLMs, constructs a Unit Eval dataset, engineers prompts for unit‑test generation, and enforces quality through a unified write‑evaluate pipeline.

AISoftware Testingjava
0 likes · 9 min read
Can AI Write Perfect Unit Tests? Inside AutoDev’s Prompt‑Fine‑Tune Pipeline
Top Architect
Top Architect
Dec 24, 2023 · Backend Development

Design and Implementation of a Configurable Approval Workflow System

This article explains how to design a flexible approval workflow with serial, parallel, conditional, and mixed processes, defines the required database tables, shows UI mock‑ups, and provides Java Spring code for handling approval actions, including auto‑pass, delegation, and rule‑based field visibility.

Database designRole-Based Accessapproval workflow
0 likes · 25 min read
Design and Implementation of a Configurable Approval Workflow System
Selected Java Interview Questions
Selected Java Interview Questions
Dec 23, 2023 · Backend Development

Common Pitfalls When Using Spring BeanUtils.copyProperties

This article outlines common pitfalls of using Spring's BeanUtils.copyProperties for object property copying in Java backend development, including type mismatches, null overwrites, incorrect imports, inner class issues, shallow copy behavior, and performance drawbacks, and advises caution when employing this utility.

BackendBeanUtilsCopyProperties
0 likes · 8 min read
Common Pitfalls When Using Spring BeanUtils.copyProperties
Architecture Digest
Architecture Digest
Dec 22, 2023 · Backend Development

Understanding @Transactional(readOnly = true) in Spring: Mechanics, Performance Benefits, and Usage Considerations

This article explains how Spring's @Transactional(readOnly = true) works internally, shows the performance and memory advantages it brings, compares service‑layer and repository‑layer usage with concrete connection‑pool tests, and provides guidance on when to apply it in JPA‑based backend applications.

BackendPerformancejpa
0 likes · 9 min read
Understanding @Transactional(readOnly = true) in Spring: Mechanics, Performance Benefits, and Usage Considerations
政采云技术
政采云技术
Dec 20, 2023 · Backend Development

MyBatis Cache Issues

This article explains MyBatis's first‑level and second‑level cache mechanisms, illustrates common consistency problems caused by default cache settings in both distributed and single‑session scenarios, and provides practical recommendations such as adjusting localCacheScope or deep‑copying results to avoid cache pitfalls.

BackendCacheORM
0 likes · 12 min read
MyBatis Cache Issues
JD Cloud Developers
JD Cloud Developers
Dec 12, 2023 · Backend Development

Why @ResponseBody Fails When Writing Directly to the Output Stream in Spring

This article analyzes a Spring MVC issue where a batch template download failed due to missing configuration, explores how @ResponseBody interacts with manual stream writes, presents code examples, debugging insights, and offers best‑practice recommendations for reliable file‑download endpoints.

FileDownloadResponseBodyjava
0 likes · 5 min read
Why @ResponseBody Fails When Writing Directly to the Output Stream in Spring
macrozheng
macrozheng
Dec 12, 2023 · Backend Development

Mastering Retry Strategies in Java: 8 Proven Methods for Reliable API Calls

This article explains why retry mechanisms are essential for distributed Java applications and walks through eight practical implementations—including loop, recursion, Apache HttpClient, Spring Retry, Resilience4j, custom utilities, asynchronous thread‑pool retries, and message‑queue based retries—plus best‑practice guidelines to avoid common pitfalls.

HttpClientRetryconcurrency
0 likes · 17 min read
Mastering Retry Strategies in Java: 8 Proven Methods for Reliable API Calls
政采云技术
政采云技术
Dec 12, 2023 · Backend Development

Understanding Spring's Circular Dependency Resolution via Three-Level Caches

This article explains how Spring handles common circular dependencies between singleton Beans by employing a three‑level cache (singletonObjects, earlySingletonObjects, singletonFactories), detailing the prerequisites, cache structures, workflow, and key source code snippets that illustrate the underlying mechanism.

Three-level Cachebackend-developmentbean
0 likes · 10 min read
Understanding Spring's Circular Dependency Resolution via Three-Level Caches
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 11, 2023 · Backend Development

Mastering Spring 6 REST Calls: WebClient, RestTemplate, HTTP Interface & RestClient

Spring 6 offers four powerful ways to perform remote HTTP calls—WebClient, RestTemplate, HTTP Interface, and RestClient—each with distinct APIs, configuration options, and usage patterns, and this guide walks through their setup, method signatures, request handling, and error management for Java developers.

HTTP InterfaceRestClientjava
0 likes · 12 min read
Mastering Spring 6 REST Calls: WebClient, RestTemplate, HTTP Interface & RestClient
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Dec 7, 2023 · Backend Development

In-Depth Analysis of XXL‑RPC Framework: Design, Implementation, and Source Code Walkthrough

This article provides a comprehensive overview of the lightweight XXL‑RPC framework, covering fundamental RPC concepts, the framework's architecture built on Spring and Netty, detailed provider and consumer implementations, various call types, and the service registry‑discovery mechanism, concluding with practical insights for developers.

Distributed SystemsMicroservicesNetty
0 likes · 17 min read
In-Depth Analysis of XXL‑RPC Framework: Design, Implementation, and Source Code Walkthrough
Architecture Digest
Architecture Digest
Dec 5, 2023 · Backend Development

Common Java Backend Code Smells and Bugs: Real‑World Cases and Fixes

The article presents a collection of typical Java backend coding mistakes—ranging from misused ternary operators and poor parameter validation to logging pitfalls, dead code, improper exception handling, AOP self‑invocation issues, Redis resilience problems, and Excel file upload bugs—along with concrete examples, images, and corrected code snippets to help developers avoid and fix them.

BackendBugFixesCodeQuality
0 likes · 12 min read
Common Java Backend Code Smells and Bugs: Real‑World Cases and Fixes
Architect
Architect
Dec 4, 2023 · Backend Development

Mastering Unified Exception Handling in Spring: Clean Code, Better Readability

This article analyzes the problem of scattered try‑catch blocks in Java services, explains why per‑controller exception methods are cumbersome, and presents a unified exception handling solution using @ControllerAdvice, custom Assert utilities, enum‑based error codes, and environment‑aware response formatting, all illustrated with concrete code examples and test results.

AssertBackendException Handling
0 likes · 24 min read
Mastering Unified Exception Handling in Spring: Clean Code, Better Readability
Architect's Tech Stack
Architect's Tech Stack
Dec 2, 2023 · Backend Development

Drawbacks of the Spring Framework: Performance, Configuration Complexity, Learning Curve, and More

This article examines several drawbacks of the Spring framework—including performance overhead from reflection and proxies, complex configuration, steep learning curve, over‑reliance on the Spring ecosystem, hidden “magic” features, version compatibility challenges, and misuse of dependency injection—illustrated with Java code examples.

Performanceconfigurationdependency-injection
0 likes · 8 min read
Drawbacks of the Spring Framework: Performance, Configuration Complexity, Learning Curve, and More
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 2, 2023 · Backend Development

Mastering Spring’s @Import: Three Powerful Ways to Load Configurations

This guide explains Spring’s @Import annotation, covering three import strategies—direct class array, ImportSelector, and ImportBeanDefinitionRegistrar—through detailed code examples, usage scenarios, and important version notes, helping developers improve configuration management, code maintainability, and readability in backend Java applications.

Import Annotationbackend-developmentconfiguration
0 likes · 6 min read
Mastering Spring’s @Import: Three Powerful Ways to Load Configurations
Architect
Architect
Dec 1, 2023 · Backend Development

Implementing a Process Pool with Apache Commons GenericObjectPool in Java

This article explains how to use Apache Commons GenericObjectPool to implement a reusable process pool in Java, covering the underlying concepts, required dependencies, custom factory implementation, pool configuration, and example code for borrowing and returning pooled objects.

BackendGenericObjectPooljava
0 likes · 9 min read
Implementing a Process Pool with Apache Commons GenericObjectPool in Java
Java Architect Essentials
Java Architect Essentials
Nov 29, 2023 · Backend Development

Performance Tuning of a Java Backend Service: From 50/s to 500/s Through Profiling, Thread‑Pool, and SQL Optimization

The article details a step‑by‑step investigation and optimization of a Java backend service that initially delivered only 50 requests per second under load, covering profiling, slow‑SQL fixes, thread‑pool tuning, JVM memory adjustments, and Spring bean creation overhead to approach the target 500 req/s.

PerformanceProfilingjava
0 likes · 14 min read
Performance Tuning of a Java Backend Service: From 50/s to 500/s Through Profiling, Thread‑Pool, and SQL Optimization
Architect
Architect
Nov 27, 2023 · Backend Development

Why 500 req/s Became 50 req/s: A Deep Dive into Spring Bean Creation Bottlenecks

A ToB system that seemed able to handle 500 requests per second stalled at 50 req/s due to hidden lock contention in prototype‑scoped Spring beans, slow SQL updates, excessive logging, and thread‑pool misconfiguration, prompting a step‑by‑step performance investigation and multiple optimizations.

Load TestingPerformancejava
0 likes · 16 min read
Why 500 req/s Became 50 req/s: A Deep Dive into Spring Bean Creation Bottlenecks
Architect's Guide
Architect's Guide
Nov 27, 2023 · Backend Development

Unified Exception Handling in Spring Boot: Design, Implementation, and Best Practices

This article provides a comprehensive guide to designing and implementing a unified exception handling framework in Spring Boot, covering the use of @ControllerAdvice, custom assertion interfaces, enum‑based error codes, standardized response structures, and practical testing scenarios to improve code readability and robustness.

BackendException Handlingassertions
0 likes · 20 min read
Unified Exception Handling in Spring Boot: Design, Implementation, and Best Practices
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 25, 2023 · Backend Development

Understanding Spring’s FactoryBean and MyBatis Integration: From BeanFactory to MapperFactoryBean

This article explains how Spring’s FactoryBean mechanism enables seamless integration with MyBatis by detailing the roles of BeanFactory, SqlSessionFactoryBean, MapperScannerConfigurer, and MapperFactoryBean, and provides annotated code examples and XML configuration to illustrate the underlying process and its benefits for transaction management and thread safety.

FactoryBeanIntegrationbackend-development
0 likes · 13 min read
Understanding Spring’s FactoryBean and MyBatis Integration: From BeanFactory to MapperFactoryBean
Java Architect Essentials
Java Architect Essentials
Nov 23, 2023 · Backend Development

Overview of Spring Assertion, Utility, Reflection and AOP Helper Methods

This article presents a concise reference of Spring's Assert class, common ObjectUtils, StringUtils, CollectionUtils, file and stream copy helpers, as well as ReflectionUtils and AOP utilities, illustrating their purpose, typical usage scenarios, and providing ready‑to‑copy code snippets for Java backend development.

BackendReflectionassertions
0 likes · 11 min read
Overview of Spring Assertion, Utility, Reflection and AOP Helper Methods
Architecture Digest
Architecture Digest
Nov 23, 2023 · Backend Development

Using Redisson Distributed Locks with Custom Annotations in Java

This article explains how to apply Redisson's distributed lock in Java, demonstrates the basic lock and tryLock APIs, shows how to create a custom @DistributedLock annotation and an AOP aspect to handle locking automatically, and provides a practical usage example with two services.

annotationaopconcurrency
0 likes · 8 min read
Using Redisson Distributed Locks with Custom Annotations in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Nov 23, 2023 · Backend Development

Mastering Spring’s Type Conversion: Services, Custom Converters, and Best Practices

This article explains Spring’s type conversion system, introduces the core conversion service interfaces, demonstrates how to use GenericConversionService, DefaultConversionService, and WebConversionService, and provides step‑by‑step examples of custom converters, factories, generic converters, and their registration in Spring MVC.

Spring Frameworkjavaspring
0 likes · 13 min read
Mastering Spring’s Type Conversion: Services, Custom Converters, and Best Practices
Sohu Tech Products
Sohu Tech Products
Nov 22, 2023 · Fundamentals

Mastering the Chain of Responsibility: From SOLID Principles to Spring Integration

This article explains the seven SOLID design principles, introduces the Chain of Responsibility pattern, demonstrates its application to a video‑review workflow with step‑by‑step Java code, and shows how to evolve the implementation from a basic chain to a Spring‑managed, fully open‑closed solution.

Chain of ResponsibilityDesign PatternsSOLID
0 likes · 13 min read
Mastering the Chain of Responsibility: From SOLID Principles to Spring Integration
Selected Java Interview Questions
Selected Java Interview Questions
Nov 21, 2023 · Backend Development

Design and Implementation of a Generic Asynchronous Processing SDK for Spring Applications

This article introduces a generic asynchronous processing SDK for Spring-based backend systems, explaining its purpose, advantages, underlying principles, components such as Kafka, XXL‑Job, MySQL, and Vue, design patterns employed, database schema, configuration via Apollo, usage examples, and deployment details.

KafkaSDKdesign-patterns
0 likes · 8 min read
Design and Implementation of a Generic Asynchronous Processing SDK for Spring Applications
Senior Brother's Insights
Senior Brother's Insights
Nov 20, 2023 · Backend Development

Mastering the Chain of Responsibility Pattern for Scalable Product Validation in Java

This article explains the Chain of Responsibility design pattern, shows how to apply it to multi‑step product creation validation and expense‑approval workflows, walks through abstract and concrete handler implementations, dynamic configuration, and client execution with full Java code examples.

Chain of ResponsibilityDesign Patternsbackend-development
0 likes · 20 min read
Mastering the Chain of Responsibility Pattern for Scalable Product Validation in Java
IT Architects Alliance
IT Architects Alliance
Nov 17, 2023 · Backend Development

Design and Implementation of a Generic Asynchronous Processing SDK

This article introduces a generic asynchronous processing SDK for Java Spring applications, covering its purpose, advantages, underlying principles, component choices such as Kafka, XXL‑Job, MySQL, design patterns, database schema, configuration via Apollo, usage instructions, safety considerations, and provides code examples and a GitHub repository link.

AsyncKafkaMySQL
0 likes · 9 min read
Design and Implementation of a Generic Asynchronous Processing SDK
Java High-Performance Architecture
Java High-Performance Architecture
Nov 17, 2023 · Backend Development

How to Ensure Transaction Rollback in Multithreaded Spring Applications

This article demonstrates why @Transactional fails in multithreaded Spring services, presents a thread‑pool based solution using manual SqlSession control to achieve full rollback across child threads, and provides complete code examples and test results illustrating both failure and successful transaction handling.

databasejavamultithreading
0 likes · 10 min read
How to Ensure Transaction Rollback in Multithreaded Spring Applications
Architect
Architect
Nov 13, 2023 · Backend Development

Designing a Robust Asynchronous Processing SDK with Spring, Kafka, and MySQL

This article explains why asynchronous processing is needed in evolving systems, outlines the goals of guaranteeing execution without blocking the main flow, and walks through a complete SDK design that uses Spring transaction events, Kafka, XXL‑Job, MySQL, and a Vue UI, including configuration, code snippets, and deployment details.

AsynchronousBackendDesign
0 likes · 10 min read
Designing a Robust Asynchronous Processing SDK with Spring, Kafka, and MySQL
Selected Java Interview Questions
Selected Java Interview Questions
Nov 10, 2023 · Backend Development

Design and Implementation of a Generic Asynchronous Processing SDK for Java Backend Systems

This article introduces a generic asynchronous processing SDK for Java back‑ends, explaining its purpose, advantages, underlying principles, components, design patterns, database schema, configuration, usage, and operational considerations, and provides complete code and configuration examples.

Kafkabackend-developmentjava
0 likes · 9 min read
Design and Implementation of a Generic Asynchronous Processing SDK for Java Backend Systems
Architect
Architect
Nov 9, 2023 · Backend Development

How Vivo’s LuBan Service Generates Billions of Unique IDs with Sub‑millisecond Latency

This article explains the business scenarios that drive the need for globally unique distributed IDs, analyzes the challenges of uniqueness, performance, and availability, and details Vivo's self‑built LuBan ID service—including its architecture, three ID formats, custom extensions, SDK usage, performance optimizations, and real‑world deployment metrics.

Backend ArchitectureLuBanMicroservices
0 likes · 18 min read
How Vivo’s LuBan Service Generates Billions of Unique IDs with Sub‑millisecond Latency
Architecture Digest
Architecture Digest
Nov 9, 2023 · Backend Development

Elegant Unified Exception Handling in Spring Using Assertions and Enums

This article explains how to replace repetitive try‑catch blocks in Spring applications with a clean, assertion‑based approach combined with @ControllerAdvice and enum‑driven error codes, providing a unified way to handle service‑layer, controller‑layer, and unknown exceptions while keeping responses consistent and internationalized.

BackendControllerAdviceEnums
0 likes · 20 min read
Elegant Unified Exception Handling in Spring Using Assertions and Enums
Java Backend Technology
Java Backend Technology
Nov 9, 2023 · Backend Development

Boosting Java Service Throughput from 50/s to 500/s: My Performance Tuning Journey

Faced with a client demanding 500 requests per second, I discovered my Java backend only handled 50 /s due to slow SQL, excessive logging, thread‑pool misconfiguration, and costly Spring bean creation; by adding latency alerts, async execution, reducing thread counts, and fixing Redis bean scope, throughput nearly doubled.

ProfilingThroughputjava
0 likes · 15 min read
Boosting Java Service Throughput from 50/s to 500/s: My Performance Tuning Journey
Code Ape Tech Column
Code Ape Tech Column
Nov 8, 2023 · Backend Development

Performance Tuning of a Spring Backend Service to Reach 500 Requests per Second

The article details a step‑by‑step performance investigation and optimization of a Spring‑based ToB system, covering slow SQL, thread‑pool tuning, JVM memory adjustments, excessive logging, and bean‑creation overhead, ultimately improving throughput from 50 req/s to nearly the required 500 req/s.

JVMPerformance OptimizationThroughput
0 likes · 13 min read
Performance Tuning of a Spring Backend Service to Reach 500 Requests per Second
JD Retail Technology
JD Retail Technology
Nov 7, 2023 · Backend Development

Practical Cases of Using ChatGPT for Backend Development Tasks

This document presents a series of real‑world examples showing how ChatGPT can assist cloud‑trading developers with backend tasks such as resource scheduling, regex interpretation, CSV generation, JavaBean‑to‑JSON conversion, Spring IoC learning, JSON formatting, Java 8 stream processing, and CI pipeline error analysis.

CSVChatGPTJava8 Streams
0 likes · 5 min read
Practical Cases of Using ChatGPT for Backend Development Tasks
Architect's Guide
Architect's Guide
Nov 4, 2023 · Backend Development

Eliminating Code Duplication in Java Backend Development with Design Patterns, Annotations, and Bean Mapping

This article explains how to reduce repetitive Java backend code by extracting common logic into abstract classes, applying the Template Method and Factory patterns, using custom annotations with reflection for API serialization, and leveraging bean‑mapping utilities to copy properties between DTOs and DOs.

Code RefactoringDesign PatternsReflection
0 likes · 21 min read
Eliminating Code Duplication in Java Backend Development with Design Patterns, Annotations, and Bean Mapping
Architect
Architect
Nov 1, 2023 · Backend Development

Mastering Distributed Locks with Redis: From Basics to Advanced Solutions

This article examines why local locks fail in distributed micro‑service environments, introduces Redis‑based distributed locking, walks through five incremental lock designs—from a simple SETNX implementation to a Lua‑script atomic solution—highlighting each scheme's trade‑offs, code examples, and practical pitfalls.

LuaMicroservicesconcurrency
0 likes · 18 min read
Mastering Distributed Locks with Redis: From Basics to Advanced Solutions
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Nov 1, 2023 · Backend Development

Mastering Spring Event Mechanism: Custom Events, Listeners, Async & Ordering

This article introduces Spring's event mechanism, covering the creation of custom ApplicationEvent classes, implementing listeners via ApplicationListener and @EventListener annotations, publishing events, using @Async for asynchronous handling, configuring custom event multicaster, and controlling listener execution order with @Order, complete with code examples.

AsynchronousEventannotation
0 likes · 9 min read
Mastering Spring Event Mechanism: Custom Events, Listeners, Async & Ordering
Architecture Digest
Architecture Digest
Oct 31, 2023 · Backend Development

Performance Troubleshooting and Optimization of a ToB System: From Low Throughput to Improved CPU Utilization

This article documents a step‑by‑step investigation of a Java Spring backend that initially achieved only 50 requests per second under load, detailing how slow SQL, excessive logging, thread‑pool misconfiguration, bean‑creation overhead and CPU‑bound operations were identified and mitigated to roughly double the throughput while reducing response latency.

ProfilingThroughputjava
0 likes · 14 min read
Performance Troubleshooting and Optimization of a ToB System: From Low Throughput to Improved CPU Utilization
Sanyou's Java Diary
Sanyou's Java Diary
Oct 30, 2023 · Backend Development

Mastering API Retry Strategies in Java: 8 Proven Techniques

This article presents eight practical ways to implement retry mechanisms for third‑party API calls in Java, covering simple loops, recursion, built‑in HttpClient handlers, Spring Retry, Resilience4j, custom utilities, asynchronous thread‑pool retries, and message‑queue based retries, plus best‑practice guidelines.

HttpClientMessageQueueconcurrency
0 likes · 17 min read
Mastering API Retry Strategies in Java: 8 Proven Techniques
Selected Java Interview Questions
Selected Java Interview Questions
Oct 27, 2023 · Backend Development

Diagnosing and Optimizing Throughput and CPU Usage in a Java Spring Backend Service

The article details a step‑by‑step investigation of a Java Spring backend that initially achieved only 50 req/s under load, identifies bottlenecks such as slow SQL, excessive logging, thread‑pool misconfiguration and costly Spring bean creation, and demonstrates how targeted optimizations roughly doubled throughput while reducing response times.

CPUPerformanceProfiling
0 likes · 14 min read
Diagnosing and Optimizing Throughput and CPU Usage in a Java Spring Backend Service
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Oct 25, 2023 · Backend Development

Mastering Spring WebClient: Non‑Blocking HTTP Calls in Spring Boot

This guide introduces Spring WebClient, a reactive, non‑blocking HTTP client for Spring Boot, compares it with RestTemplate, explains configuration options, demonstrates usage patterns, error handling, memory limits, Reactor Netty customization, request bodies, form data, and filter registration, providing practical code examples throughout.

HTTPSpringBootjava
0 likes · 11 min read
Mastering Spring WebClient: Non‑Blocking HTTP Calls in Spring Boot
Selected Java Interview Questions
Selected Java Interview Questions
Oct 23, 2023 · Backend Development

Why RestTemplate Is Deprecated and How to Migrate to Spring WebClient

This article explains why Spring's RestTemplate has been deprecated, outlines the advantages of the non‑blocking WebClient, and provides detailed migration examples—including GET, POST, error handling, streaming, retries, custom configurations, and best‑practice guidelines for using WebClient in backend development.

backend-developmentjavareactive-programming
0 likes · 16 min read
Why RestTemplate Is Deprecated and How to Migrate to Spring WebClient
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Oct 23, 2023 · Backend Development

Boost Spring Performance: AOP Logging, Caching, Thread Pools & DB Optimizations

This article presents practical Spring performance optimization techniques—including AOP‑based logging, second‑level caching with @Cacheable, reducing database queries via fetch strategies, employing thread‑pool executors, and general database query tuning—to improve application speed and resource efficiency.

PerformanceThreadPoolaop
0 likes · 9 min read
Boost Spring Performance: AOP Logging, Caching, Thread Pools & DB Optimizations
Liangxu Linux
Liangxu Linux
Oct 22, 2023 · Backend Development

How to Eliminate 95% of Try‑Catch Blocks with Unified Exception Handling in Spring

This article explains why excessive try‑catch blocks hurt readability, introduces Spring's @ControllerAdvice and custom Assert utilities combined with enums to create a clean, centralized exception handling framework, and demonstrates the approach with full code examples and practical test scenarios.

AssertBackendException Handling
0 likes · 22 min read
How to Eliminate 95% of Try‑Catch Blocks with Unified Exception Handling in Spring
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Oct 21, 2023 · Backend Development

Mastering Spring’s ObjectProvider: Flexible Dependency Injection Techniques

Spring’s ObjectProvider interface enhances dependency injection by allowing optional, lazy, and multiple bean retrieval, offering methods like getIfAvailable, orderedStream, and stream, with code examples demonstrating on-demand injection, fetching all implementations, and the underlying mechanism via DependencyObjectProvider in the DefaultListableBeanFactory.

dependency-injectionjavaobjectprovider
0 likes · 8 min read
Mastering Spring’s ObjectProvider: Flexible Dependency Injection Techniques
Java Architect Essentials
Java Architect Essentials
Oct 18, 2023 · Backend Development

Design and Implementation of a Reactive Download Library for Spring MVC/WebFlux

This article introduces a Java library that simplifies downloading various resources—files, HTTP URLs, or custom objects—by using a single @Download annotation, reactive programming, customizable handlers, source factories, concurrent loading, compression, and event‑driven logging to streamline complex download workflows in Spring MVC and WebFlux applications.

DownloadFile CompressionWebFlux
0 likes · 16 min read
Design and Implementation of a Reactive Download Library for Spring MVC/WebFlux
DeWu Technology
DeWu Technology
Oct 18, 2023 · Backend Development

Understanding Bean Validation and Spring Validation in Java Applications

Bean Validation (JSR‑303/380) offers a standard, annotation‑driven API—implemented by Hibernate Validator—for declaring constraints such as @NotNull or @Email, while Spring integrates it via @Valid and @Validated (with group support and AOP‑based method validation), enabling automatic request‑body checks, custom constraints, and service‑layer validation, provided the proper annotations are applied.

Bean ValidationJSR-303spring
0 likes · 15 min read
Understanding Bean Validation and Spring Validation in Java Applications
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Oct 16, 2023 · Backend Development

Master Spring Bean Injection: Prototype in Singleton, Lazy, Transactions & More

This guide explains how to handle various Spring bean injection and transaction challenges, including injecting prototype beans into singletons, using @Lazy, registering abstract beans, resolving multiple bean conflicts, forcing rollback without exceptions, injecting static fields, ensuring transaction consistency, enabling non‑public transactional methods, custom component scanning, and adding interfaces via AOP.

Bean Scopedependency-injectionjava
0 likes · 12 min read
Master Spring Bean Injection: Prototype in Singleton, Lazy, Transactions & More
Cognitive Technology Team
Cognitive Technology Team
Oct 15, 2023 · Backend Development

How to Implement Pre‑warming in the Spring Ecosystem: Extension Points and Their Execution Order

Implementing pre‑warming in Spring involves using several extension points—SmartLifecycle, ApplicationListener for ContextRefreshedEvent, InitializingBean, @PostConstruct, ApplicationRunner, and CommandLineRunner—each with specific execution timing and ordering considerations to ensure cache loading occurs before the web server starts handling traffic.

ApplicationListenerApplicationRunnerCache
0 likes · 4 min read
How to Implement Pre‑warming in the Spring Ecosystem: Extension Points and Their Execution Order