Tagged articles
4050 articles
Page 25 of 41
macrozheng
macrozheng
Apr 12, 2022 · Backend Development

Mastering Spring Retry: How @Retryable Simplifies Robust Backend Calls

This article explains how Spring Boot's spring-retry module and the @Retryable annotation enable clean, annotation‑driven retry logic for common failure scenarios, covering configuration, code examples, recovery handling with @Recover, and important usage precautions.

RetryableSpring BootSpring Retry
0 likes · 7 min read
Mastering Spring Retry: How @Retryable Simplifies Robust Backend Calls
Programmer DD
Programmer DD
Apr 11, 2022 · Backend Development

Unlock Dynamic Thread Pool Management with Hippo4J: Features, Modes, and Benefits

This article introduces Hippo4J, a Java dynamic thread‑pool solution inspired by Meituan's design, detailing its web‑based parameter tuning, monitoring, alerting capabilities, two deployment modes (lightweight with config‑center and standalone server), and the operational advantages it brings to developers and operators.

AlertingDynamic Thread PoolHippo4J
0 likes · 5 min read
Unlock Dynamic Thread Pool Management with Hippo4J: Features, Modes, and Benefits
Top Architect
Top Architect
Apr 10, 2022 · Backend Development

Spring Boot Best Practices: 16 Essential Tips for Building Robust Microservices

This article presents sixteen practical Spring Boot best‑practice recommendations—including custom BOM management, auto‑configuration, project initialization with Spring Initializr, clean controller design, service layering, database isolation, constructor injection, logging, testing, and configuration externalization—to help developers build maintainable, high‑quality microservices efficiently.

ConfigurationMicroservicesSpring Boot
0 likes · 13 min read
Spring Boot Best Practices: 16 Essential Tips for Building Robust Microservices
Cognitive Technology Team
Cognitive Technology Team
Apr 9, 2022 · Backend Development

When Does ThreadPoolExecutor’s RejectedExecutionHandler Trigger and How to Use Its Implementations in Java

This article explains the conditions that cause ThreadPoolExecutor’s RejectedExecutionHandler to fire, reviews the built‑in policies such as DiscardOldestPolicy, AbortPolicy, CallerRunsPolicy and DiscardPolicy, provides their source code, and offers practical advice on selecting and avoiding pitfalls when handling rejected tasks in Java concurrency.

RejectedExecutionHandlerThreadPoolExecutorbackend-development
0 likes · 5 min read
When Does ThreadPoolExecutor’s RejectedExecutionHandler Trigger and How to Use Its Implementations in Java
Java High-Performance Architecture
Java High-Performance Architecture
Apr 9, 2022 · Backend Development

How to Achieve Near‑Zero Message Loss in RabbitMQ: Confirm, Persistence, and Manual Ack

This article explains the three stages where RabbitMQ messages can be lost and presents a comprehensive reliability strategy—including producer confirm mode, durable exchanges/queues, message persistence, database‑backed compensation, and manual consumer acknowledgments—to achieve virtually loss‑free message delivery.

Confirm ModeMessage ReliabilityRabbitMQ
0 likes · 9 min read
How to Achieve Near‑Zero Message Loss in RabbitMQ: Confirm, Persistence, and Manual Ack
IT Services Circle
IT Services Circle
Apr 8, 2022 · Backend Development

Understanding Spring's Event Publishing and Listening Mechanism: Source Code Analysis and Practical Implementation

This article explains how Spring implements broadcast and listener functionality through ApplicationEventPublisher and ApplicationListener, analyzes the underlying bean post‑processor workflow, and provides complete source‑code examples for custom events, publishers, listeners, and a REST client to demonstrate end‑to‑end event handling.

ApplicationListenerEvent Publishingbackend-development
0 likes · 7 min read
Understanding Spring's Event Publishing and Listening Mechanism: Source Code Analysis and Practical Implementation
Java Interview Crash Guide
Java Interview Crash Guide
Apr 8, 2022 · Backend Development

7 Core Strategies for Java Performance Optimization: Theory Overview

This article provides a theoretical overview of seven major Java performance optimization techniques—including code reuse, computation parallelism, asynchronous processing, lazy loading, result set reduction, resource conflict handling, and JVM tuning—offering readers a comprehensive framework to understand and improve application efficiency.

JVMbackend-developmentjava
0 likes · 11 min read
7 Core Strategies for Java Performance Optimization: Theory Overview
Senior Brother's Insights
Senior Brother's Insights
Apr 7, 2022 · Backend Development

7 Core Strategies to Supercharge Java Performance: Theory and Best Practices

This article presents a theoretical overview of seven major Java performance‑optimization directions—including reuse, parallel execution, async conversion, result‑set trimming, resource‑conflict handling, algorithm tuning, and JVM tuning—explaining their principles, typical techniques, and practical considerations for developers.

JVMbackend-developmentjava
0 likes · 14 min read
7 Core Strategies to Supercharge Java Performance: Theory and Best Practices
Selected Java Interview Questions
Selected Java Interview Questions
Apr 7, 2022 · Backend Development

Single-Node and Distributed Scheduled Tasks in Java: JDK, Spring, Redis, and Middleware Solutions

This article explains how to implement single-node scheduled tasks using JDK's ScheduledExecutorService and Spring @Scheduled, compares Redis‑based approaches with ZSet and key‑space notifications, and reviews popular distributed scheduling frameworks such as Quartz, elastic‑job‑lite, LTS, and XXL‑Job for microservice environments.

Scheduled Tasksbackend-developmentspring
0 likes · 9 min read
Single-Node and Distributed Scheduled Tasks in Java: JDK, Spring, Redis, and Middleware Solutions
Top Architect
Top Architect
Apr 6, 2022 · Backend Development

High‑Fidelity Baidu Wenku Clone Project Overview and Technical Stack

This article introduces a fully functional, open‑source Baidu Wenku‑style document library built with Go/Beego, Bootstrap, and MySQL, detailing its architecture, SVG‑based document rendering, point system, watermarking, and how to obtain the source code.

BeegoDocument ManagementGo
0 likes · 5 min read
High‑Fidelity Baidu Wenku Clone Project Overview and Technical Stack
Cognitive Technology Team
Cognitive Technology Team
Apr 4, 2022 · Backend Development

Resolving NoSuchMethodError Caused by Duplicate Classes with Different Method Signatures in Java Projects

When two JARs contain identically named classes and methods but differ in a method's return type, Java's class‑loading mechanism may load the wrong version, triggering a java.lang.NoSuchMethodError, which can be prevented by detecting duplicate classes with Maven Enforcer rules.

Duplicate ClassesMaven EnforcerNoSuchMethodError
0 likes · 4 min read
Resolving NoSuchMethodError Caused by Duplicate Classes with Different Method Signatures in Java Projects
Selected Java Interview Questions
Selected Java Interview Questions
Apr 4, 2022 · Backend Development

Using InheritableThreadLocal to Access Parent ThreadLocal Values in Child Threads (Java)

This article explains how to make a child thread inherit the values stored in a parent thread's ThreadLocal by using InheritableThreadLocal, demonstrates the behavior with a runnable Java example, and details the underlying ThreadLocalMap mechanism that enables the inheritance.

InheritableThreadLocalThreadLocalbackend-development
0 likes · 3 min read
Using InheritableThreadLocal to Access Parent ThreadLocal Values in Child Threads (Java)
Java Backend Technology
Java Backend Technology
Apr 4, 2022 · Backend Development

Top 16 Spring Boot Best Practices for Robust Microservices

This article presents sixteen essential Spring Boot best practices—from managing dependencies with a custom BOM and leveraging auto‑configuration, to structuring packages, using constructor injection, handling concurrency, externalizing configuration, and comprehensive testing—helping developers build maintainable, high‑performance Java microservices.

MicroservicesSpring Bootbackend-development
0 likes · 13 min read
Top 16 Spring Boot Best Practices for Robust Microservices
Top Architect
Top Architect
Apr 2, 2022 · Backend Development

Applying Domain-Driven Design to Payment Systems: A Comprehensive Guide

This article explains how Airwallex uses Domain-Driven Design (DDD) to model a complex payment system, detailing strategic and tactical patterns, bounded contexts, domain events, and the translation of domain models into microservice architectures, while highlighting the benefits of clear communication and modular design.

DDDDomain-Driven DesignMicroservices
0 likes · 9 min read
Applying Domain-Driven Design to Payment Systems: A Comprehensive Guide
Su San Talks Tech
Su San Talks Tech
Apr 2, 2022 · Backend Development

Top 16 Spring Boot Best Practices for Robust Microservices

This article presents sixteen practical Spring Boot best‑practice recommendations—from managing dependencies with custom BOMs and leveraging auto‑configuration to structuring packages, handling concurrency, externalizing configuration, and adopting testing strategies—aimed at building clean, maintainable microservices.

MicroservicesSpring Bootbackend-development
0 likes · 13 min read
Top 16 Spring Boot Best Practices for Robust Microservices
IT Xianyu
IT Xianyu
Apr 1, 2022 · Backend Development

Why Use Spring? Understanding How It Solves Coupling Problems with Dependency Injection

This article compares traditional object creation with Spring’s dependency injection, demonstrating how injecting DAO beans via XML configuration decouples service and data layers, includes Java code examples, test results, and visual analogies of gear systems to illustrate reduced coupling.

Inversion of ControlIoCbackend-development
0 likes · 5 min read
Why Use Spring? Understanding How It Solves Coupling Problems with Dependency Injection
DataFunSummit
DataFunSummit
Mar 30, 2022 · Backend Development

Implementing Distributed Scheduled Tasks with Quartz in Spring Boot

This tutorial explains how to build a highly available, horizontally scalable distributed scheduled‑task system using Quartz in a Spring Boot application, covering application scenarios, Maven dependencies, database initialization, configuration properties, job and scheduler code, and verification of failover behavior.

Distributed SchedulingQuartzSpring Boot
0 likes · 14 min read
Implementing Distributed Scheduled Tasks with Quartz in Spring Boot
Selected Java Interview Questions
Selected Java Interview Questions
Mar 29, 2022 · Backend Development

Spring Boot Best Practices: 16 Tips for Building Robust Microservices

This article shares sixteen practical Spring Boot best‑practice recommendations—ranging from custom BOM management and auto‑configuration to proper package layout, constructor injection, concurrency awareness, externalized configuration, logging, testing, and global exception handling—to help developers build clean, maintainable Java microservices.

MicroservicesSpring Bootbackend-development
0 likes · 13 min read
Spring Boot Best Practices: 16 Tips for Building Robust Microservices
Top Architect
Top Architect
Mar 28, 2022 · Backend Development

Configuring Logback for Asynchronous Logging in Spring Boot and Performance Comparison

This article explains how to configure Logback in a Spring Boot application to separate logs by level, implement asynchronous logging with AsyncAppender, and compare performance using JMeter, demonstrating a tenfold throughput increase while providing detailed XML configuration examples and underlying implementation details.

Performance TestingSpringBootasynchronous logging
0 likes · 9 min read
Configuring Logback for Asynchronous Logging in Spring Boot and Performance Comparison
Programmer DD
Programmer DD
Mar 26, 2022 · Backend Development

What’s New in Spring Boot 3.0.0 M2? Key Updates and Improvements

Spring Boot 3.0.0 M2, released on March 25, 2022, brings 50 bug fixes, documentation enhancements, and dependency updates, revisits the M1 changes such as Java 17 baseline and Jakarta EE migration, and adds features like restored EhCache 3 support, H2 Console, and improved @ConstructorBinding detection.

M2 releaseSpring Bootbackend-development
0 likes · 3 min read
What’s New in Spring Boot 3.0.0 M2? Key Updates and Improvements
Bitu Technology
Bitu Technology
Mar 25, 2022 · Backend Development

Recap of the March 19 Elixir Meetup – Topics, Audience Insights, and Resources

The March 19 Elixir Meetup brought together four seasoned Elixir practitioners and over 3,200 online attendees to discuss resilience with Elixir and Kubernetes, FaaS design using Arweave and LiveView, native compilation of Elixir, Zig‑based NIF development, and to share learning resources and community opportunities.

Community MeetupElixirKubernetes
0 likes · 6 min read
Recap of the March 19 Elixir Meetup – Topics, Audience Insights, and Resources
Java Interview Crash Guide
Java Interview Crash Guide
Mar 22, 2022 · Backend Development

Ensuring API Idempotency: Why It Matters and How to Implement It

This article explains the concept of API idempotency, why duplicate requests can cause critical issues such as double payments, and presents a comprehensive set of client‑side and server‑side strategies—including token mechanisms, PRG pattern, unique indexes, optimistic locking, distributed locks, and more—to guarantee safe, repeatable operations.

API idempotencyDuplicate Requestsbackend-development
0 likes · 9 min read
Ensuring API Idempotency: Why It Matters and How to Implement It
Top Architect
Top Architect
Mar 21, 2022 · Backend Development

Understanding Java Object Behavior, Method Area, and Dynamic Tracing with Instrumentation, BTrace, and Arthas

This article explains how Java objects store behavior in the method area, introduces the java.lang.instrument.Instrumentation API for redefining classes at runtime, and demonstrates practical dynamic tracing techniques using BTrace and Arthas, complete with code examples and architectural insights.

BTraceInstrumentationbackend-development
0 likes · 16 min read
Understanding Java Object Behavior, Method Area, and Dynamic Tracing with Instrumentation, BTrace, and Arthas
Top Architect
Top Architect
Mar 21, 2022 · Backend Development

How Spring Resolves Bean Circular Dependencies with a Three‑Level Cache

This article explains Spring's bean lifecycle, the three‑level cache mechanism (singletonObjects, earlySingletonObjects, singletonFactories) used to break circular dependencies, the role of Aware interfaces and BeanPostProcessor, and why a second‑level cache is essential when AOP proxies are involved.

Three-level Cacheaopbackend-development
0 likes · 9 min read
How Spring Resolves Bean Circular Dependencies with a Three‑Level Cache
Top Architect
Top Architect
Mar 19, 2022 · Backend Development

Handling Multiple Content Types (JSON, Form, Form-Data) in Spring MVC with Custom Annotations

This article explains how to make a Spring MVC endpoint simultaneously accept JSON, URL‑encoded form data, and multipart/form‑data by creating a custom @GamePHP annotation, implementing dedicated argument resolvers, and configuring the necessary beans to replace the default @RequestBody and @RequestParam handling.

Content-TypeCustom AnnotationSpring MVC
0 likes · 7 min read
Handling Multiple Content Types (JSON, Form, Form-Data) in Spring MVC with Custom Annotations
Java Backend Technology
Java Backend Technology
Mar 18, 2022 · Backend Development

Why @Configuration @Bean Overrides @Component in Spring Boot 2.0.3

An in‑depth analysis shows that in Spring Boot 2.0.3 a @Configuration class defining a @Bean can override a @Component‑annotated bean of the same type, how the Spring container registers and replaces the bean definitions, and the evolution of bean‑overriding controls in later Spring and Spring Boot releases.

Bean OverridingComponentConfiguration
0 likes · 8 min read
Why @Configuration @Bean Overrides @Component in Spring Boot 2.0.3
macrozheng
macrozheng
Mar 17, 2022 · Backend Development

How to Upgrade Spring Boot to 2.6.x Without Circular Dependency and Swagger Issues

This article walks through upgrading a Spring Boot project to version 2.6.x, explains why circular bean dependencies and Swagger failures occur after the upgrade, and provides step‑by‑step configuration changes—including allowing circular references, using @Lazy, and adjusting MVC path‑matching—to resolve the problems.

Spring BootSwaggerbackend-development
0 likes · 7 min read
How to Upgrade Spring Boot to 2.6.x Without Circular Dependency and Swagger Issues
IT Services Circle
IT Services Circle
Mar 16, 2022 · Backend Development

Introducing the Go Generic Utility Library samber/lo

This article introduces the open‑source Go generic utility library samber/lo, explains how to install Go 1.18 beta and the library, and demonstrates common operations such as type conversion, concurrent processing, containment checks, filtering, deduplication, grouping, chunking, and ternary-like expressions with concise code examples.

GenericsGoUtility Library
0 likes · 7 min read
Introducing the Go Generic Utility Library samber/lo
21CTO
21CTO
Mar 16, 2022 · Backend Development

What’s New in Go 1.18? Fuzz Testing, Generics, and 20% Performance Boost

Google’s Go 1.18 release introduces native fuzz testing, generics support, module workspaces, and up to 20% performance gains on ARM64 and Apple M1, enhancing security and productivity for developers while reinforcing Go’s pivotal role in cloud‑native projects like Kubernetes and Docker.

GenericsGoGo 1.18
0 likes · 5 min read
What’s New in Go 1.18? Fuzz Testing, Generics, and 20% Performance Boost
Programmer DD
Programmer DD
Mar 16, 2022 · Backend Development

How to Use a Custom Annotation for Anonymous Access in Spring Security

This article explains two Spring Security configuration approaches, introduces a custom @IgnoreAuth annotation, and shows how to automatically whitelist annotated endpoints by scanning RequestMappingHandlerMapping, complete with code examples and workflow details.

Anonymous AccessCustom Annotationbackend-development
0 likes · 10 min read
How to Use a Custom Annotation for Anonymous Access in Spring Security
macrozheng
macrozheng
Mar 16, 2022 · Backend Development

Build a Mini Spring IoC Container in 5 Minutes: Hands‑On Tutorial

This article walks through the fundamentals of Spring’s IoC container by manually implementing a lightweight version, covering concepts such as IOC, DI, bean definitions, resource loading, bean registration, and a simple BeanFactory with example code and a test demonstrating singleton caching.

BeanFactoryIoCbackend-development
0 likes · 10 min read
Build a Mini Spring IoC Container in 5 Minutes: Hands‑On Tutorial
Xianyu Technology
Xianyu Technology
Mar 15, 2022 · Backend Development

Design and Implementation of Extensible Hook Modules in the Luxury Platform

The Luxury strategy‑center platform solves extensibility by defining a unified hook interface using the Adapter pattern, schema‑driven forms, and flat key‑value outputs, allowing operators to configure third‑party integrations via visual mappings without code changes, cutting integration time to half a day and fostering reusable assets.

Adapter Patternbackend-developmenthook module
0 likes · 9 min read
Design and Implementation of Extensible Hook Modules in the Luxury Platform
Programmer DD
Programmer DD
Mar 15, 2022 · Backend Development

Essential Java Books Every Backend Engineer Should Read

This guide highlights the most influential Java books—from core language fundamentals and JVM internals to concurrency and effective coding practices—explaining why each title is vital for building a solid backend development skill set.

JVMbackend-developmentconcurrency
0 likes · 8 min read
Essential Java Books Every Backend Engineer Should Read
Ziru Technology
Ziru Technology
Mar 15, 2022 · Backend Development

Unlocking Java Concurrency: How CountDownLatch Works Inside JDK 1.8

This article explores the inner workings of Java’s CountDownLatch from JDK 1.8, detailing its core concepts such as the counter, thread synchronization, shared mode, and AQS mechanisms, and demonstrates practical usage through step‑by‑step code analysis and examples.

AQSCountDownLatchbackend-development
0 likes · 5 min read
Unlocking Java Concurrency: How CountDownLatch Works Inside JDK 1.8
Java Interview Crash Guide
Java Interview Crash Guide
Mar 14, 2022 · Backend Development

Master Spring Boot: Core Concepts, Configurations, and Best Practices

An extensive SpringBoot guide covering its definition, benefits, core configuration files and formats, main annotations, activation methods, container independence, run options, auto‑configuration mechanics, new 2.x features, pagination, security, ActiveMQ, YAML, Actuator, Swagger, exception handling, request mapping nuances, legacy compatibility, protection strategies, executable jar differences, and task scheduling.

ActuatorConfigurationSpringBoot
0 likes · 10 min read
Master Spring Boot: Core Concepts, Configurations, and Best Practices
Top Architect
Top Architect
Mar 11, 2022 · Backend Development

Understanding Nacos Architecture and Service Registration in Spring Cloud

This article explains the internal architecture of Nacos, its core components, the registration principles of service instances, how Spring Cloud integrates Nacos through the ServiceRegistry interface and auto‑configuration, and the mechanisms for heartbeat, data consistency, and dynamic service discovery in a cloud‑native backend environment.

MicroservicesNacosSpring Cloud
0 likes · 8 min read
Understanding Nacos Architecture and Service Registration in Spring Cloud
YunZhu Net Technology Team
YunZhu Net Technology Team
Mar 10, 2022 · Backend Development

Elegant Solution for MyBatis Single‑Table Operations with MyBatis‑Pro Framework

The article introduces MyBatis‑Pro, a Spring‑Boot starter that eliminates manual single‑table SQL by generating CRUD methods through naming conventions, explains quick integration, core features, configuration options, entity annotations, logical‑delete strategies, generic services, and provides extensive code examples for developers.

Logical DeleteMyBatisORM
0 likes · 17 min read
Elegant Solution for MyBatis Single‑Table Operations with MyBatis‑Pro Framework
Architects' Tech Alliance
Architects' Tech Alliance
Mar 8, 2022 · Backend Development

30 Architectural Principles for Software Engineers

The article presents thirty practical architectural principles—ranging from simplicity, YAGNI, iterative development, automated testing, and ROI to server concurrency, distributed system design, user experience, and configuration management—aimed at guiding engineers and teams toward robust, scalable, and maintainable software solutions.

Distributed SystemsSoftware Architecturebackend-development
0 likes · 10 min read
30 Architectural Principles for Software Engineers
Alipay Experience Technology
Alipay Experience Technology
Mar 8, 2022 · Backend Development

Mastering EggJS: From Reusable Code to Scalable Plugins and Custom Frameworks

This article walks through EggJS’s core design principles, demonstrates building a simple GitHub aggregation API, shows how to evolve reusable code into plugins and custom frameworks, and explains progressive development practices for large‑scale enterprise applications, highlighting configuration, plugin management, and framework layering.

Node.jsbackend-developmentcustom-framework
0 likes · 13 min read
Mastering EggJS: From Reusable Code to Scalable Plugins and Custom Frameworks
NiuNiu MaTe
NiuNiu MaTe
Mar 8, 2022 · Backend Development

How a Junior Engineer Landed a Tencent Backend Offer: Interview Experience & Tips

This article shares a junior engineer's detailed journey of securing a backend engineering offer at Tencent, covering three interview rounds, key technical topics like Spring, HashMap, Elasticsearch, Redis, and personal reflections on strengths, weaknesses, and preparation strategies.

ElasticsearchTencentbackend-development
0 likes · 5 min read
How a Junior Engineer Landed a Tencent Backend Offer: Interview Experience & Tips
Alibaba Terminal Technology
Alibaba Terminal Technology
Mar 7, 2022 · Backend Development

Why Node.js Hot Module Reload Can Leak Memory—and How to Avoid It

This article examines Node.js hot‑update mechanisms, explains how modules like clear‑module and decache can cause memory, resource, and versioning leaks, demonstrates real‑world examples with code, and offers guidance on when hot‑reloading is safe and how to mitigate its pitfalls.

Node.jsbackend-developmenthot-reload
0 likes · 17 min read
Why Node.js Hot Module Reload Can Leak Memory—and How to Avoid It
Programmer DD
Programmer DD
Mar 7, 2022 · Backend Development

Why Spring Cloud Gateway Returns Duplicate CORS Headers and How to Fix It

This article explains why Spring Cloud Gateway may emit duplicate Access-Control-Allow-Origin and Vary headers during CORS handling, analyzes the internal processing flow, and provides two practical solutions—using DedupeResponseHeader configuration or a custom GlobalFilter—to eliminate the duplication.

CORSSpring BootSpring Cloud Gateway
0 likes · 12 min read
Why Spring Cloud Gateway Returns Duplicate CORS Headers and How to Fix It
Architecture Digest
Architecture Digest
Mar 7, 2022 · Backend Development

Implementing Delayed Message Queues with RabbitMQ Plugin in Spring Boot

This article explains how to replace inefficient traditional delay mechanisms with RabbitMQ's delayed‑queue plugin, showing step‑by‑step configuration, producer and consumer code in Spring Boot, and demonstrates successful delayed message delivery using real‑world examples such as auto‑confirm orders and ticket reservations.

Message QueueRabbitMQSpring Boot
0 likes · 8 min read
Implementing Delayed Message Queues with RabbitMQ Plugin in Spring Boot
Java Interview Crash Guide
Java Interview Crash Guide
Mar 4, 2022 · Backend Development

Why Use Message Queues? Scenarios, Pros, Cons, and HA Strategies

This article explains the fundamentals of message queues, their typical use cases such as decoupling, asynchronous processing, and traffic shaping, compares popular MQ products, and outlines best practices for high availability, loss prevention, idempotency, ordering, backlog handling, and expiration management.

Message QueueRabbitMQRocketMQ
0 likes · 8 min read
Why Use Message Queues? Scenarios, Pros, Cons, and HA Strategies
Java Captain
Java Captain
Mar 2, 2022 · Backend Development

Understanding the Difference Between yyyy and YYYY in Java Date Formatting

This article explains how using the uppercase YYYY pattern in Java's SimpleDateFormat can incorrectly shift dates to the next year for week‑based years, demonstrates the issue with sample code, and provides guidance to avoid this subtle bug in date handling.

Date Formattingbackend-developmentbug prevention
0 likes · 4 min read
Understanding the Difference Between yyyy and YYYY in Java Date Formatting
macrozheng
macrozheng
Mar 2, 2022 · Backend Development

Boost Your Search Capabilities with RediSearch and RedisJSON – A Hands‑On Guide

This guide introduces RedisMod’s enhanced modules, shows how to install Redis with Docker, demonstrates native JSON storage using RedisJSON, walks through building and querying a full‑text search index with RediSearch—including Chinese support—and compares its performance against Elasticsearch.

DockerRediSearchRedisJSON
0 likes · 8 min read
Boost Your Search Capabilities with RediSearch and RedisJSON – A Hands‑On Guide
IT Architects Alliance
IT Architects Alliance
Feb 27, 2022 · Backend Development

Inside Redis: How Its Single‑Threaded Event Loop Works

This article walks through Redis’s annotated source code to explain how its single‑threaded architecture initializes the server, loads configuration and data, and continuously processes file and time events within a while‑loop, revealing why Redis achieves high performance without spawning additional worker threads.

Single Threadbackend-developmentc++
0 likes · 9 min read
Inside Redis: How Its Single‑Threaded Event Loop Works
Top Architect
Top Architect
Feb 27, 2022 · Backend Development

Analyzing Redis' Single‑Threaded Model and Event Loop from Source Code

This article examines Redis's single‑threaded architecture by walking through its source code, detailing the main function initialization steps, the event‑loop implementation, and how file and time events are processed, while also noting the promotional messages interspersed throughout.

C languageSingle‑threadedbackend-development
0 likes · 12 min read
Analyzing Redis' Single‑Threaded Model and Event Loop from Source Code
Java Captain
Java Captain
Feb 24, 2022 · Backend Development

How Spring Solves Bean Circular Dependencies Using a Three-Level Cache

This article explains how Spring's bean lifecycle and its three-level caching mechanism—singletonObjects, earlySingletonObjects, and singletonFactories—work together to resolve circular dependencies, especially when AOP proxies are involved, highlighting why a three‑cache approach is necessary.

Three-level Cacheaopbackend-development
0 likes · 9 min read
How Spring Solves Bean Circular Dependencies Using a Three-Level Cache
Open Source Linux
Open Source Linux
Feb 24, 2022 · Backend Development

Mastering Nginx: Core Concepts, Configuration, and Performance Techniques

This comprehensive guide explains what Nginx is, its key advantages, typical use cases, request processing flow, high‑concurrency model, proxy types, directory layout, configuration directives, load‑balancing strategies, rate‑limiting, compression, health checks, and differences from Apache, providing practical examples and code snippets for backend developers.

ConfigurationNginxWeb server
0 likes · 28 min read
Mastering Nginx: Core Concepts, Configuration, and Performance Techniques
Code Ape Tech Column
Code Ape Tech Column
Feb 23, 2022 · Backend Development

Design and Implementation of Delayed Message Queues in Distributed Systems

This article examines various delayed‑message implementations in distributed message‑queue systems, comparing external‑storage approaches using databases, RocksDB and Redis, and reviewing built‑in solutions in open‑source MQs such as RocketMQ, Pulsar and QMQ, while discussing their advantages, drawbacks and design considerations.

PulsarRocketMQRocksDB
0 likes · 15 min read
Design and Implementation of Delayed Message Queues in Distributed Systems
Zhuanzhuan Tech
Zhuanzhuan Tech
Feb 23, 2022 · Backend Development

Go Error Handling Practices in ZuanZuan Operations: Usage and Management

This article explains how ZuanZuan's operations team applies Go's error handling mechanisms—including error values, panic/recover, sentinel errors, and custom error types—along with practical guidelines and code examples to improve reliability and maintainability of production services.

Error HandlingGobackend-development
0 likes · 13 min read
Go Error Handling Practices in ZuanZuan Operations: Usage and Management
Java Backend Technology
Java Backend Technology
Feb 22, 2022 · Backend Development

Mastering Redis: 16 Real-World Patterns for Caching, Locks, Queues, and More

This article presents 16 practical Redis use cases—including caching, distributed sessions, locks, global IDs, counters, rate limiting, bitmaps, shopping carts, timelines, message queues, lotteries, likes, product tags, filtering, follow relationships, and ranking—detailing data types, commands, and implementation tips for building scalable backend services.

BitmapsMessage Queuebackend-development
0 likes · 10 min read
Mastering Redis: 16 Real-World Patterns for Caching, Locks, Queues, and More
Yang Money Pot Technology Team
Yang Money Pot Technology Team
Feb 21, 2022 · Backend Development

Design and Implementation of an Online Customer Service Instant Messaging System

This article details the design and implementation of an online customer service instant messaging system, covering requirements analysis, client‑server network model, HTTP and WebSocket protocols, distributed architecture choices such as routing rules, Redis shared memory, server‑master sync, and message‑queue broadcasting, and explains why Netty was selected as the development framework.

Distributed SystemsInstant MessagingMessage Queue
0 likes · 17 min read
Design and Implementation of an Online Customer Service Instant Messaging System
Programmer DD
Programmer DD
Feb 21, 2022 · Backend Development

Mastering Redis Rate Limiting: 3 Practical Techniques for High‑Concurrency Backends

This article explains three Redis‑based rate‑limiting techniques—setnx with expiration, a sliding‑window implementation using sorted sets, and a token‑bucket algorithm with lists—complete with Java code examples and discussion of their advantages and limitations for high‑concurrency backend services.

Distributed Systemsbackend-developmentjava
0 likes · 7 min read
Mastering Redis Rate Limiting: 3 Practical Techniques for High‑Concurrency Backends
Java Architect Essentials
Java Architect Essentials
Feb 18, 2022 · Backend Development

Comparison of Java Microservice Frameworks: Spring Boot, Spring Cloud, Vert.x, and Other Lightweight Options

The article compares popular Java microservice frameworks, highlighting Spring Boot's ease of use but high memory consumption, Vert.x's lightweight performance, and the characteristics of SparkJava, Micronaut, Javalin, and Quarkus, while also noting required infrastructure components for Spring Cloud.

MicroservicesPerformance TestingSpring Boot
0 likes · 6 min read
Comparison of Java Microservice Frameworks: Spring Boot, Spring Cloud, Vert.x, and Other Lightweight Options
Selected Java Interview Questions
Selected Java Interview Questions
Feb 18, 2022 · Backend Development

Implementing a WebSocket Chat Application with Spring Boot

This tutorial explains the advantages of WebSocket over HTTP and provides a step‑by‑step guide, including Maven dependency, Spring Boot configuration, a ServerEndpoint class, a simple HTML/JavaScript front‑end, and a controller method, to build a real‑time chat system with online/offline notifications and private or broadcast messaging.

Spring BootWebSocketbackend-development
0 likes · 10 min read
Implementing a WebSocket Chat Application with Spring Boot
转转QA
转转QA
Feb 17, 2022 · Backend Development

Building a Generic API Diff Tool for System Refactoring and Data Migration Testing

This article describes how a Python‑based diff utility was created to compare old and new API responses during a promotion change‑record migration, detailing its implementation, handling of JSON structures, improvements over the first version, and plans for integration with an API testing platform.

API testingData MigrationJSON
0 likes · 8 min read
Building a Generic API Diff Tool for System Refactoring and Data Migration Testing
IT Services Circle
IT Services Circle
Feb 16, 2022 · Backend Development

SpringBoot Performance Optimization: Monitoring, Profiling, and Tuning Strategies

This article provides a comprehensive guide to optimizing SpringBoot services, covering metric exposure with Prometheus, custom business monitoring, Java flame‑graph profiling, SkyWalking distributed tracing, HTTP and Tomcat tuning, layer‑wise code improvements, and practical code examples for real‑world performance gains.

Java profilingPrometheusSpringBoot
0 likes · 16 min read
SpringBoot Performance Optimization: Monitoring, Profiling, and Tuning Strategies
Programmer DD
Programmer DD
Feb 16, 2022 · Backend Development

Master Spring AOP: Essential Annotations, Execution Order, and Common Pitfalls

This article revisits the fundamentals of Spring AOP, detailing its core annotations such as @Before, @After, @Around, and their execution sequence, while providing a complete demo project, code examples, and insights into common pitfalls like proxy failures and multi‑aspect ordering.

Proxyannotationsaspectj
0 likes · 9 min read
Master Spring AOP: Essential Annotations, Execution Order, and Common Pitfalls
Top Architect
Top Architect
Feb 14, 2022 · Backend Development

Common Spring Framework Utility Classes: Assertions, ObjectUtils, StringUtils, CollectionUtils, File/Resource IO, Reflection and AOP Helpers

This article presents a curated collection of Spring Framework utility classes—including assertion helpers, object/array/collection utilities, file and resource IO tools, as well as reflection and AOP utilities—providing ready‑to‑use methods that replace many custom helper functions in Java backend development.

ReflectionUtility Classesaop
0 likes · 13 min read
Common Spring Framework Utility Classes: Assertions, ObjectUtils, StringUtils, CollectionUtils, File/Resource IO, Reflection and AOP Helpers
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Feb 14, 2022 · Backend Development

How MyBatis Parses and Applies Transaction Managers: A Deep Dive

This article walks through how MyBatis parses the transaction manager factory from XML configuration, builds the Environment, and applies the transaction manager during SqlSession creation, including detailed code examples of XMLConfigBuilder, transaction factories, and the JdbcTransaction implementation.

MyBatisbackend-developmentjava
0 likes · 8 min read
How MyBatis Parses and Applies Transaction Managers: A Deep Dive
Java Captain
Java Captain
Feb 12, 2022 · Backend Development

Integrating Dataway with Spring Boot: A Step‑by‑Step Guide

This tutorial explains how to embed Dataway—a zero‑code API configuration UI built on DataQL—into a Spring Boot application by adding Hasor dependencies, configuring properties, setting up required database tables, wiring the data source into Hasor, enabling Hasor annotations, and finally creating and publishing APIs through the Dataway UI.

API ConfigurationDatawayHasor
0 likes · 12 min read
Integrating Dataway with Spring Boot: A Step‑by‑Step Guide
Bin's Tech Cabin
Bin's Tech Cabin
Feb 11, 2022 · Backend Development

Why Netty’s Connection Handling Slows Down – Inside the OP_ACCEPT Bug and Fix

This article dissects Netty’s core connection‑acceptance mechanism, explains how the OP_ACCEPT event is processed, reveals a subtle bug that limits read loops to a single connection, and shows the fix introduced in version 4.1.69.final, offering developers a complete understanding of Netty’s reactor architecture.

Java NIONettyOP_ACCEPT
0 likes · 40 min read
Why Netty’s Connection Handling Slows Down – Inside the OP_ACCEPT Bug and Fix
Top Architect
Top Architect
Feb 7, 2022 · Backend Development

Understanding Tomcat: Architecture, Components, Lifecycle, Connectors, and Asynchronous Servlets

This article provides a comprehensive overview of Tomcat, covering its role as a Java web server, internal components such as Server, Service, Connector and Container, lifecycle management, deployment methods, connector implementations (BIO, NIO, APR), Comet support, and asynchronous servlet processing, with code examples for thread handling.

Asynchronous ServletConnectorServlet Container
0 likes · 20 min read
Understanding Tomcat: Architecture, Components, Lifecycle, Connectors, and Asynchronous Servlets
21CTO
21CTO
Feb 6, 2022 · Backend Development

What’s New in Spring Boot 3.0.0 M1? Key Changes and Upgrade Guide

The article outlines the major updates in Spring Boot 3.0.0 M1, including the jump to Java 17, migration from Java EE to Jakarta EE, removed legacy support, upgraded Spring and third‑party dependencies, and the roadmap for upcoming milestone releases.

Spring Bootbackend-developmentjakarta-ee
0 likes · 5 min read
What’s New in Spring Boot 3.0.0 M1? Key Changes and Upgrade Guide
Programmer DD
Programmer DD
Jan 28, 2022 · Backend Development

Boost Your Java Persistence with MyBatis Generator GUI: Features & Quick Start

Discover the MyBatis Generator GUI tool that streamlines Java POJO and mapping file creation, outlines its six key features, system requirements, and three easy startup methods—including self‑build, IDE launch, and native packaging—so you can quickly generate MyBatis code.

Database MappingGUI ToolMyBatis
0 likes · 4 min read
Boost Your Java Persistence with MyBatis Generator GUI: Features & Quick Start
IT Architects Alliance
IT Architects Alliance
Jan 26, 2022 · Backend Development

Mastering API Full Lifecycle: From Object Modeling to Service Orchestration

This article explores comprehensive API lifecycle management, detailing how a lightweight API gateway works with a robust development platform that uses object‑driven modeling to generate contracts, map to databases, publish services, handle testing, documentation, rule processing, and visual service orchestration.

API lifecycleMicroservicesObject Modeling
0 likes · 17 min read
Mastering API Full Lifecycle: From Object Modeling to Service Orchestration
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Jan 25, 2022 · Backend Development

Mastering API Lifecycle: From Object Modeling to Service Orchestration

This article explains how an API development platform can manage the full API lifecycle—design, development, testing, deployment, monitoring, and orchestration—by leveraging object‑driven modeling, automatic CRUD generation, rule processing, service composition, and source‑code export for microservice deployment.

APIObject ModelingService Orchestration
0 likes · 14 min read
Mastering API Lifecycle: From Object Modeling to Service Orchestration
IT Architects Alliance
IT Architects Alliance
Jan 25, 2022 · Backend Development

Designing Clear API Return Codes and Messages for Backend Development

This article explains how to design consistent API return codes and messages, using HTTP status code concepts, segmenting error codes, providing human‑readable messages, enabling personalized user messages, and centralizing handling to improve communication, debugging, and monitoring in backend development.

APIError HandlingHTTP status
0 likes · 4 min read
Designing Clear API Return Codes and Messages for Backend Development
Programmer DD
Programmer DD
Jan 24, 2022 · Backend Development

Why VS Code’s 2022 Roadmap Puts Spring Boot Front‑and‑Center

The article reviews VS Code’s 2021 updates, outlines its 2022 roadmap centered on six key areas—including extensive Spring Boot enhancements—and speculates that these improvements aim to keep VS Code competitive against JetBrains’ upcoming Fleet IDE for Java developers.

IDEJetBrainsSpring Boot
0 likes · 3 min read
Why VS Code’s 2022 Roadmap Puts Spring Boot Front‑and‑Center
Architect
Architect
Jan 23, 2022 · Backend Development

Designing Consistent API Return Codes: Lessons from HTTP Status Codes

The article explains why a well‑designed API return‑code system—modeled after HTTP status codes, with clear numeric ranges, descriptive messages, and personalized user messages—reduces communication overhead, simplifies maintenance, and enables effective monitoring and alerting for backend services.

Error CodesHTTP status codesSoftware Architecture
0 likes · 6 min read
Designing Consistent API Return Codes: Lessons from HTTP Status Codes
Java Backend Technology
Java Backend Technology
Jan 23, 2022 · Backend Development

Build a High‑Performance Lottery System with Spring Boot, MyBatis‑Plus & Redis

This tutorial walks through creating a Spring Boot lottery application that caches activity, prize, and record data in Redis, covering project setup, Maven dependencies, YML configuration, MyBatis‑Plus code generation, Redis key management, lottery API, event‑driven data loading, stock handling, and asynchronous record saving.

Lottery SystemSpring Bootbackend-development
0 likes · 24 min read
Build a High‑Performance Lottery System with Spring Boot, MyBatis‑Plus & Redis
Java Captain
Java Captain
Jan 22, 2022 · Backend Development

Spring Boot Lottery System with Redis and MyBatis-Plus: Project Overview and Implementation Guide

This article presents a step‑by‑step guide to building a Spring Boot lottery application that leverages MyBatis‑Plus and Redis for caching activity, prize, and record data, covering project setup, dependencies, configuration, code generation, Redis integration, lottery logic, and stock management.

LotterySpring Bootbackend-development
0 likes · 32 min read
Spring Boot Lottery System with Redis and MyBatis-Plus: Project Overview and Implementation Guide
Programmer DD
Programmer DD
Jan 21, 2022 · Backend Development

What’s New in Spring Boot 3.0.0 M1? Key Changes and Migration Tips

Spring Boot 3.0.0 M1, released on January 20 2022, upgrades the Java baseline to Java 17, migrates all Java EE APIs to Jakarta EE, drops support for several components, updates numerous Spring and third‑party dependencies, and outlines the upcoming release schedule.

M1 releaseSpring Bootbackend-development
0 likes · 5 min read
What’s New in Spring Boot 3.0.0 M1? Key Changes and Migration Tips
Programmer DD
Programmer DD
Jan 20, 2022 · Backend Development

Why FastAPI Is the Fastest Way to Build High‑Performance Python APIs

FastAPI is a high‑performance, easy‑to‑learn Python web framework that lets you build robust APIs quickly, offering features like speed, concise code, automatic validation, and OpenAPI compatibility, with simple installation via pip and interactive documentation out of the box.

ASGIFastAPIInstallation
0 likes · 4 min read
Why FastAPI Is the Fastest Way to Build High‑Performance Python APIs
Java Interview Crash Guide
Java Interview Crash Guide
Jan 20, 2022 · Backend Development

Mastering Java Resource Loading: Class vs ClassLoader and Spring Tips

This article explains how to correctly load resources in Java using Class and ClassLoader getResource methods, compares their behavior, demonstrates batch resource retrieval, and shows how Spring's ResourceLoader and ResourcePatternResolver simplify resource access, providing practical code examples and best‑practice guidelines.

backend-developmentclassloaderjava
0 likes · 8 min read
Mastering Java Resource Loading: Class vs ClassLoader and Spring Tips