Tagged articles
5000 articles
Page 33 of 50
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Sep 27, 2024 · Backend Development

Master JVM Tuning: Practical Steps, Tools, and Real-World Code Example

This article explains why JVM tuning is essential for performance, outlines a step‑by‑step optimization workflow—including GC monitoring, heap dumps, parameter tuning, and tool usage—provides a concrete Java code example that triggers memory pressure, and shares effective JVM flags to prevent out‑of‑memory errors.

Backend DevelopmentGarbage CollectionJVM
0 likes · 7 min read
Master JVM Tuning: Practical Steps, Tools, and Real-World Code Example
Java Architecture Stack
Java Architecture Stack
Sep 27, 2024 · Industry Insights

How to Connect Java to Industrial Devices: Modbus, JNI, and Serial Port Solutions

This guide explains how Java can communicate with industrial hardware by using the Modbus protocol with jLibModbus, accessing low‑level registers via JNI, and employing serial‑port libraries such as JSerialComm or RXTX, providing step‑by‑step setup, code examples, dependency configuration, and practical considerations for reliable device integration.

Hardware integrationIndustrial IoTJNI
0 likes · 19 min read
How to Connect Java to Industrial Devices: Modbus, JNI, and Serial Port Solutions
Java Architect Essentials
Java Architect Essentials
Sep 26, 2024 · Backend Development

Implementing Interface Rate Limiting in Spring Boot Using Interceptor, Redis, and Custom Annotations

This article demonstrates how to build a flexible API rate‑limiting solution in Spring Boot by combining a HandlerInterceptor, Redis counters, and custom annotations with reflection, covering configuration, code examples, mapping rules, time‑window nuances, path‑parameter handling, and real‑IP considerations.

Custom AnnotationInterceptorJava
0 likes · 18 min read
Implementing Interface Rate Limiting in Spring Boot Using Interceptor, Redis, and Custom Annotations
Architecture Digest
Architecture Digest
Sep 26, 2024 · Backend Development

Should try‑catch be placed inside or outside a for loop in Java?

The article explains the trade‑offs of placing a Java try‑catch block inside versus outside a for‑loop, illustrating both approaches with code examples, and advises choosing the placement based on whether you need unified error handling or per‑iteration resilience, while also noting a free book promotion.

Backend DevelopmentException HandlingJava
0 likes · 4 min read
Should try‑catch be placed inside or outside a for loop in Java?
Java Architecture Stack
Java Architecture Stack
Sep 26, 2024 · Backend Development

Deep Dive into SOFAJRaft: How Java Implements Multi‑Raft Consensus

This article examines the core implementation of SOFAJRaft, a high‑performance Java library based on the Raft consensus algorithm, covering node initialization, leader election, log replication, snapshot handling, fault recovery, and multi‑Raft‑Group support with detailed code examples.

ConsensusDistributed SystemsJava
0 likes · 13 min read
Deep Dive into SOFAJRaft: How Java Implements Multi‑Raft Consensus
Java Backend Technology
Java Backend Technology
Sep 26, 2024 · Backend Development

How to Quickly Bootstrap a Spring Boot Project and Avoid Common Version Pitfalls

This guide walks you through the pain points of environment setup, shows step‑by‑step creation of a Spring Boot project, explains version compatibility between Spring Cloud, Spring Boot and Kafka, and provides ready‑to‑use Maven configurations, global exception handling, logging, CORS, Swagger, and a curated list of useful development tools.

Exception HandlingJavaLogging
0 likes · 11 min read
How to Quickly Bootstrap a Spring Boot Project and Avoid Common Version Pitfalls
Architecture Digest
Architecture Digest
Sep 25, 2024 · Fundamentals

A Practical Overview of New Java Features from Java 9 to Java 17

This article presents a concise, hands‑on review of the most useful Java language enhancements introduced between Java 9 and Java 17—including private interface methods, Optional API upgrades, var type inference, the new HTTP client, switch expressions, text blocks, records, instanceof pattern matching, and sealed classes—illustrated with clear code examples.

JavaJava11Java13
0 likes · 15 min read
A Practical Overview of New Java Features from Java 9 to Java 17
JavaEdge
JavaEdge
Sep 25, 2024 · Backend Development

What’s New in JDK 23? A Quick Tour of 12 Game‑Changing Features

The article outlines the twelve preview features introduced in JDK 23, from primitive pattern matching to structured concurrency, and argues that mastering timeless programming principles from Effective Java can help developers adapt to such language evolutions.

Backend DevelopmentEffective JavaJDK 23
0 likes · 10 min read
What’s New in JDK 23? A Quick Tour of 12 Game‑Changing Features
Java Architect Essentials
Java Architect Essentials
Sep 24, 2024 · Backend Development

Understanding the State Pattern and Implementing Order Workflow with Spring State Machine

This article explains the State design pattern, demonstrates its Java implementation with example code, introduces Spring State Machine concepts, and provides a complete step‑by‑step guide to building and testing an order status workflow using Spring State Machine, including configuration, listeners, services, and a controller.

JavaOrder WorkflowState Machine
0 likes · 13 min read
Understanding the State Pattern and Implementing Order Workflow with Spring State Machine
JavaEdge
JavaEdge
Sep 24, 2024 · Artificial Intelligence

Mastering RAG with LangChain4j: From Simple Setup to Advanced Retrieval‑Augmented Generation

This article explains how to extend large language models with domain‑specific knowledge using Retrieval‑Augmented Generation (RAG) in LangChain4j, covering the concepts of RAG, its indexing and retrieval stages, simple RAG setup, detailed API usage, and advanced customization options such as query transformers and content injectors.

EmbeddingJavaLLM
0 likes · 24 min read
Mastering RAG with LangChain4j: From Simple Setup to Advanced Retrieval‑Augmented Generation
IT Architects Alliance
IT Architects Alliance
Sep 24, 2024 · Backend Development

Implementing a FIFO Export Queue for Large Data Exports in Java

The article describes a Java‑based FIFO export queue that limits concurrent MySQL export operations, outlines the related classes (ExportQueue, AbstractExport, ExportImpl, and a test controller), provides full source code, and presents test results showing how the queue manages up to ten simultaneous export requests.

ConcurrencyExportQueueFIFO
0 likes · 11 min read
Implementing a FIFO Export Queue for Large Data Exports in Java
Top Architect
Top Architect
Sep 24, 2024 · Backend Development

Guide to Using tldb Distributed Locks with Go and Java

This article introduces tldb's distributed lock mechanism, explains lock, trylock, and unlock methods, provides Go and Java client examples, and also includes promotional information about ChatGPT services and a developer community for developers.

GoJavaMQ
0 likes · 10 min read
Guide to Using tldb Distributed Locks with Go and Java
Top Architect
Top Architect
Sep 24, 2024 · Backend Development

Improving Spring Boot Controllers: From Unclean to Elegant with Validation and Global Exception Handling

This article examines common pitfalls in Spring Boot controller implementations, demonstrates how excessive if‑else checks and business logic in controllers degrade code quality, and provides clean, refactored examples using @Valid validation, concise error handling, and a global exception handler to achieve more maintainable backend services.

Controller DesignJavaSpring Boot
0 likes · 11 min read
Improving Spring Boot Controllers: From Unclean to Elegant with Validation and Global Exception Handling
macrozheng
macrozheng
Sep 24, 2024 · Backend Development

Master SpringBoot’s Built‑in Utility Classes: Assertions, Collections, IO, and More

This article provides a concise guide to SpringBoot’s built‑in utility classes—including Assert, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, and AOP helpers—explaining their purpose, key methods, and offering ready‑to‑use code examples to boost development efficiency.

JavaReflectionSpringBoot
0 likes · 14 min read
Master SpringBoot’s Built‑in Utility Classes: Assertions, Collections, IO, and More
Open Source Linux
Open Source Linux
Sep 24, 2024 · Backend Development

How to Tame 900% CPU Spikes in MySQL and Java Processes

This guide explains why MySQL and Java processes can exceed 900% CPU usage in production, and provides step‑by‑step methods—using top, show processlist, jstack, index tuning, caching, and code adjustments—to diagnose, mitigate, and prevent such spikes.

CPU optimizationJavaLinux
0 likes · 10 min read
How to Tame 900% CPU Spikes in MySQL and Java Processes
DevOps Operations Practice
DevOps Operations Practice
Sep 23, 2024 · Operations

Root Cause Analysis and Optimization of High Load on Alibaba Cloud RocketMQ Consumer Service

The article investigates why a RocketMQ consumer service running on a 4‑core ECS experiences sustained high load despite low CPU, I/O and memory usage, identifies excessive thread creation and frequent trace‑module context switches as the main causes, and proposes configuration and SDK upgrades to resolve the issue.

JavaPerformance tuningThread Management
0 likes · 9 min read
Root Cause Analysis and Optimization of High Load on Alibaba Cloud RocketMQ Consumer Service
DaTaobao Tech
DaTaobao Tech
Sep 23, 2024 · Backend Development

Root Cause Analysis of Missing Logs after Tomcat 7→8 Upgrade

After upgrading from Tomcat 7 to Tomcat 8, the application’s mixed log4j‑1.4 and logback‑1.2.3 dependencies caused the SLF4J binder to be loaded nondeterministically, so Tomcat 8 sometimes selected the Log4j binder without a configuration file, resulting in completely missing log output; removing the conflicting jars or enforcing a deterministic class‑loading order restored logging.

DebuggingJavaMaven
0 likes · 19 min read
Root Cause Analysis of Missing Logs after Tomcat 7→8 Upgrade
macrozheng
macrozheng
Sep 23, 2024 · Fundamentals

28 Essential IntelliJ IDEA Tips to Supercharge Your Java Development

This guide presents 28 practical IntelliJ IDEA tricks—from viewing code history and adjusting memory settings to customizing keymaps, code inspections, Maven dependency visualization, and multi‑instance debugging—helping Java developers dramatically boost productivity and streamline daily workflows.

Code navigationIDE TipsIntelliJ IDEA
0 likes · 13 min read
28 Essential IntelliJ IDEA Tips to Supercharge Your Java Development
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Sep 23, 2024 · Backend Development

Mastering Spring Bean Lifecycle: 8 Essential Stages Explained

This article walks through the eight critical phases of a Spring bean's lifecycle—from instantiation and property population to initialization, post‑processor hooks, usage, and destruction—detailing how Spring creates, configures, enhances, and finally disposes of beans, with code snippets and diagrams for clarity.

Backend DevelopmentJavabean-lifecycle
0 likes · 5 min read
Mastering Spring Bean Lifecycle: 8 Essential Stages Explained
Su San Talks Tech
Su San Talks Tech
Sep 23, 2024 · Backend Development

Boost Java Performance: 5 Proven HashMap & Enum Optimizations

This article presents five practical Java performance tweaks—pre‑allocating HashMap capacity, using object keys, caching Enum values, replacing String constants with Enums, and upgrading the JDK—backed by JMH benchmarks that show up to 9.5× speed gains.

BenchmarkEnumHashMap
0 likes · 17 min read
Boost Java Performance: 5 Proven HashMap & Enum Optimizations
Architecture Digest
Architecture Digest
Sep 22, 2024 · Backend Development

Advanced MapStruct Usage: Expressions, qualifiedByName, NullValueMappingStrategy, and Decorator

This article introduces MapStruct, a compile‑time Java bean‑mapping framework, and demonstrates advanced features such as expression mapping, qualifiedByName for custom conversions, null‑value handling strategies, and the use of decorators to extend mapper behavior, complete with code examples.

Backend DevelopmentDecoratorJava
0 likes · 7 min read
Advanced MapStruct Usage: Expressions, qualifiedByName, NullValueMappingStrategy, and Decorator
Su San Talks Tech
Su San Talks Tech
Sep 22, 2024 · Backend Development

Mastering Rate Limiting: From Fixed Windows to Redis Distributed Solutions

This article explains why rate limiting is essential for microservice stability, introduces basic concepts like thresholds and rejection strategies, and walks through multiple algorithms—including fixed‑window, sliding‑window, sliding‑log, leaky‑bucket, token‑bucket—and their Java implementations as well as Redis‑based distributed approaches, complete with code samples and performance considerations.

Backend DevelopmentDistributed SystemsJava
0 likes · 25 min read
Mastering Rate Limiting: From Fixed Windows to Redis Distributed Solutions
Lobster Programming
Lobster Programming
Sep 21, 2024 · Backend Development

Mastering Spring Boot Transaction Hooks for Advanced Business Logic

This article explains how Spring Boot’s @Transactional annotation works, introduces programmatic transaction management, and demonstrates how to create custom transaction hook functions with TransactionSynchronizationManager and TransactionSynchronization to execute custom logic at each transaction phase, improving robustness and maintainability.

Backend DevelopmentJavaSpring Boot
0 likes · 4 min read
Mastering Spring Boot Transaction Hooks for Advanced Business Logic
Java High-Performance Architecture
Java High-Performance Architecture
Sep 21, 2024 · Backend Development

Master MyBatis-Mate: Advanced Features for Secure, Sharded Java Backends

This article introduces MyBatis‑Mate, an enterprise‑grade MyBatis extension that provides sharding, data auditing, sensitive‑word filtering, field encryption, dictionary binding, dynamic DDL maintenance, data‑scope permissions and performance monitoring, complete with practical code examples and configuration guidance.

DatabaseJavaMyBatis
0 likes · 15 min read
Master MyBatis-Mate: Advanced Features for Secure, Sharded Java Backends
ITPUB
ITPUB
Sep 21, 2024 · Backend Development

Why Spring Event Can Crash Your Service During Shutdown and How to Avoid It

The article recounts a production incident where Spring Event caused bean‑lookup failures during service shutdown, explains the three‑step usage of Spring Event with code examples, and presents three mitigation strategies—abandoning Spring Event, handling exceptions with MQ retries, and implementing graceful shutdown—ultimately opting to drop Spring Event.

EventJavamicroservices
0 likes · 5 min read
Why Spring Event Can Crash Your Service During Shutdown and How to Avoid It
JavaEdge
JavaEdge
Sep 20, 2024 · Artificial Intelligence

Integrating LangChain4j with Spring Boot: AI Services Made Easy

This guide explains how to use LangChain4j Spring Boot starters to configure OpenAI models, create declarative AI services with @AiService, and run practical examples such as a customer‑support agent and a simple HelloWorld program, covering required dependencies, properties, and code snippets.

ChatLanguageModelDeclarative AI ServiceJava
0 likes · 8 min read
Integrating LangChain4j with Spring Boot: AI Services Made Easy
Python Programming Learning Circle
Python Programming Learning Circle
Sep 20, 2024 · Fundamentals

Java vs Python: A Comparative Look at Syntax, Exception Handling, and Use Cases

The article compares Java and Python, highlighting Java’s strict, verbose syntax and robust exception handling versus Python’s concise, flexible style, illustrating differences with code examples and discussing appropriate scenarios where each language excels, from large-scale enterprise projects to quick scripting tasks.

Exception HandlingJavacomparison
0 likes · 6 min read
Java vs Python: A Comparative Look at Syntax, Exception Handling, and Use Cases
Top Architect
Top Architect
Sep 20, 2024 · Backend Development

Implementing Interface Debounce with Distributed Locks in Java Backend Systems

This article explains the concept of request debouncing, identifies which API endpoints need it, and demonstrates two distributed lock solutions—shared Redis cache and Redisson—by providing complete Java code examples, configuration steps, and test results to prevent duplicate submissions in backend services.

DebounceJavaRedis
0 likes · 17 min read
Implementing Interface Debounce with Distributed Locks in Java Backend Systems
Selected Java Interview Questions
Selected Java Interview Questions
Sep 20, 2024 · Information Security

Generating and Verifying Java License Files with TrueLicense

This article explains how to generate a Java license using TrueLicense, configure key pairs, create the license file, and integrate verification and installation steps into a Spring Boot application, including detailed code examples and deployment considerations for secure software licensing.

CodeExampleJavaLicense
0 likes · 15 min read
Generating and Verifying Java License Files with TrueLicense
macrozheng
macrozheng
Sep 20, 2024 · Fundamentals

Explore Java 23’s 12 New Features and Upcoming JEP Previews

Java 23 arrives as a non‑LTS release introducing 12 new language features, while a series of JEP previews—including pattern‑matching for primitives, class‑file API, Markdown Javadoc, Vector API, scoped values, flexible constructors, and structured concurrency—are detailed with code examples and insights for developers.

JEPJavaJava23
0 likes · 15 min read
Explore Java 23’s 12 New Features and Upcoming JEP Previews
Architecture Digest
Architecture Digest
Sep 19, 2024 · Backend Development

Using Java 8 Functional Interfaces to Simplify Conditional Logic

This article explains how Java 8 functional interfaces such as Supplier, Consumer, Runnable, and custom interfaces can replace repetitive if‑else statements, streamline exception handling, and improve code readability in backend development.

BackendException HandlingFunctional Interface
0 likes · 5 min read
Using Java 8 Functional Interfaces to Simplify Conditional Logic
JavaEdge
JavaEdge
Sep 19, 2024 · Artificial Intelligence

Unlock Java LLM Power: A Deep Dive into LangChain4j Features and Architecture

LangChain4j streamlines the integration of large language models into Java applications by offering a standardized API, extensive support for over a dozen LLM providers and vector stores, a rich toolbox for RAG, chat memory, and tool calling, plus two abstraction layers that cater to both low‑level control and high‑level convenience.

AIJavaLLM
0 likes · 10 min read
Unlock Java LLM Power: A Deep Dive into LangChain4j Features and Architecture
Java Tech Enthusiast
Java Tech Enthusiast
Sep 19, 2024 · Backend Development

JDK 23 Release Highlights and Upgrade Considerations

JDK 23, released on 2024‑09‑17 as a non‑LTS version preceding the upcoming JDK 25 LTS, introduces numerous preview APIs such as primitive pattern matching, a second class‑file API, Markdown doc comments, enhanced Vector and stream collectors, plus standardised features like ZGC generational mode, while upgrade decisions hinge on project stability needs and ecosystem support like Spring Boot compatibility.

JDK23JavaUpgrade
0 likes · 4 min read
JDK 23 Release Highlights and Upgrade Considerations
macrozheng
macrozheng
Sep 19, 2024 · Backend Development

Refactor Spring Boot Controllers for Clean Architecture and Unified Responses

This article explains the essential duties of a Spring MVC Controller, identifies common pitfalls such as duplicated validation and inconsistent responses, and demonstrates how to introduce a unified result wrapper, ResponseBodyAdvice, proper message‑converter ordering, JSR‑303 validation, custom validators, and global exception handling to produce concise, maintainable backend code.

ControllerException HandlingJava
0 likes · 19 min read
Refactor Spring Boot Controllers for Clean Architecture and Unified Responses
Architecture Digest
Architecture Digest
Sep 18, 2024 · Fundamentals

New Features in JDK 21: Virtual Threads, Sequenced Collections, String Templates, Record Patterns, and Switch Pattern Matching

The article introduces JDK 21’s latest long‑term‑support features—including virtual threads, sequenced collections, preview string templates, record patterns, and switch pattern matching—explaining their concepts, benefits, and providing concrete Java code examples for each.

JDK21JavaRecordPatterns
0 likes · 14 min read
New Features in JDK 21: Virtual Threads, Sequenced Collections, String Templates, Record Patterns, and Switch Pattern Matching
Lobster Programming
Lobster Programming
Sep 18, 2024 · Backend Development

How to Build and Use a Custom Spring Boot Starter in Minutes

Learn step‑by‑step how to create a custom Spring Boot starter, configure its properties, define services and controllers, register it via spring.factories, and then integrate the starter into other projects with Maven dependencies and configuration files.

Custom StarterJavaMaven
0 likes · 5 min read
How to Build and Use a Custom Spring Boot Starter in Minutes
Top Architect
Top Architect
Sep 18, 2024 · Backend Development

Building a Multi‑Level Approval Workflow with Activiti in Java

This article demonstrates how to design, deploy, and run a two‑level leave‑approval workflow using the Activiti BPMN engine, covering diagram creation, Spring Boot configuration, process variables, task handling, exclusive gateways, database tables, API overview, and best‑practice tips for extending the flow.

ActivitiBPMNJava
0 likes · 25 min read
Building a Multi‑Level Approval Workflow with Activiti in Java
Top Architect
Top Architect
Sep 18, 2024 · Backend Development

Combining JWT and Session for Secure User Authentication

This article explains the distinct roles of JWT and Session in user authentication, why a Session layer is needed alongside JWT, and demonstrates with Java code how to create and validate tokens while managing session state for enhanced security and scalability.

JWTJavaSession
0 likes · 9 min read
Combining JWT and Session for Secure User Authentication
Java Tech Enthusiast
Java Tech Enthusiast
Sep 18, 2024 · Backend Development

Open‑Source Chinese Payment Systems: Jeepay and DaxPay Overview

This guide reviews two actively maintained open-source Chinese payment platforms—Jeepay, an internet-focused system supporting WeChat Pay, Alipay, UnionPay and more with Spring Boot backend and Ant Design Vue front-end, and DaxPay, a Java-SDK-enabled solution for Alipay, WeChat and UnionPay built on Spring Boot and Vue 3, both offering documentation, demos, and high-concurrency deployment options.

JavaSpringBoote‑commerce
0 likes · 3 min read
Open‑Source Chinese Payment Systems: Jeepay and DaxPay Overview
Code Ape Tech Column
Code Ape Tech Column
Sep 18, 2024 · Backend Development

Resolving Duplicate CORS Headers in Spring Cloud Gateway Using DedupeResponseHeader and Custom GlobalFilter

This article explains why Spring Cloud Gateway can return duplicate Access-Control-Allow-Origin and Vary headers, analyzes the request processing flow, and provides two solutions—using the built‑in DedupeResponseHeader filter with retention strategies or implementing a custom CorsResponseHeaderFilter—to eliminate the CORS error caused by multiple header values.

BackendCORSJava
0 likes · 10 min read
Resolving Duplicate CORS Headers in Spring Cloud Gateway Using DedupeResponseHeader and Custom GlobalFilter
Java Backend Technology
Java Backend Technology
Sep 18, 2024 · Backend Development

Why Fast‑Retry Beats Spring‑Retry for Massive Asynchronous Retries

Fast‑Retry is a high‑performance, multi‑task asynchronous retry framework for Java that dramatically outperforms traditional synchronous retry libraries like Spring‑Retry and Guava‑Retry, especially when handling millions of tasks, by leveraging non‑blocking execution, customizable strategies, and seamless Spring integration.

AsynchronousConcurrencyJava
0 likes · 13 min read
Why Fast‑Retry Beats Spring‑Retry for Massive Asynchronous Retries
Top Architecture Tech Stack
Top Architecture Tech Stack
Sep 18, 2024 · Backend Development

Overview of Java's Null‑Restricted and Nullable Types Preview Feature

The article introduces Java's new preview feature that distinguishes non‑null, nullable, and unspecified types using syntax like Foo! and Foo?, explains its safety benefits, compatibility, automatic null‑pointer detection, strict initialization rules, and flexible nullness conversion, while also containing promotional material for IDE tools.

Backend DevelopmentJavaNull Safety
0 likes · 5 min read
Overview of Java's Null‑Restricted and Nullable Types Preview Feature
Alibaba Cloud Developer
Alibaba Cloud Developer
Sep 18, 2024 · Backend Development

Unlock Massive Concurrency with Java Virtual Threads: A Deep Dive

This article explores Java virtual threads introduced in JDK 21, detailing their architecture, implementation, practical usage with Thread and Executors APIs, performance comparisons against platform threads, best‑practice guidelines, and benchmark results demonstrating superior throughput for high‑concurrency server applications.

ConcurrencyJDK21Java
0 likes · 24 min read
Unlock Massive Concurrency with Java Virtual Threads: A Deep Dive
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Sep 17, 2024 · Backend Development

5 Must‑Know Spring Boot 3.2.5 Features You Can Start Using Today

This article walks through five practical Spring Boot 3.2.5 enhancements—including collection‑parameter validation, wildcard @PropertySource loading, improved method injection, custom thread‑pool scheduling, and robust Number‑type request handling—showing code examples, console output, and migration tips from older versions.

BackendJavaParameter Binding
0 likes · 8 min read
5 Must‑Know Spring Boot 3.2.5 Features You Can Start Using Today
Java Architect Essentials
Java Architect Essentials
Sep 17, 2024 · Backend Development

Using tldb Distributed Lock with Go and Java Clients

This article introduces tldb's distributed lock, explains its lock, trylock, and unlock methods, and provides step‑by‑step Go and Java client examples—including Maven configuration and code snippets—for acquiring and releasing locks across languages in a distributed environment.

JavaMQdistributed-lock
0 likes · 8 min read
Using tldb Distributed Lock with Go and Java Clients
JavaEdge
JavaEdge
Sep 17, 2024 · Artificial Intelligence

Explore IntelliJ IDEA 2024.3 EAP: Built‑in AI Assistant and Java Enhancements

The IntelliJ IDEA 2024.3 EAP preview introduces an experimental embedded AI assistant that transforms natural‑language prompts into code changes, improves Java constant‑condition analysis to better handle aliasing, adds spell‑check during indexing, displays branch names in the Welcome screen, and offers a new workspace feature for managing multiple projects.

AI AssistantIDEIntelliJ IDEA
0 likes · 7 min read
Explore IntelliJ IDEA 2024.3 EAP: Built‑in AI Assistant and Java Enhancements
Top Architect
Top Architect
Sep 16, 2024 · Backend Development

Implementing Data Permission Interceptor in MyBatis‑Plus Using Custom Annotations

This article explains how to create a custom annotation and MyBatis‑Plus interceptor to enforce data‑permission filtering based on user roles, provides both basic and advanced implementations with complete Java code examples, and shows how to integrate the interceptor into the MyBatis‑Plus plugin configuration.

Backend DevelopmentData PermissionInterceptor
0 likes · 15 min read
Implementing Data Permission Interceptor in MyBatis‑Plus Using Custom Annotations
IT Services Circle
IT Services Circle
Sep 16, 2024 · Backend Development

Live Interview with a Junior Candidate: Technical Q&A and Feedback

In this detailed live interview transcript, a senior engineer questions a recent graduate on topics ranging from Redis data structures and system design to Java concurrency, evaluates the candidate's answers, and provides career advice and hiring recommendations.

BackendInterviewJava
0 likes · 9 min read
Live Interview with a Junior Candidate: Technical Q&A and Feedback
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Sep 16, 2024 · Backend Development

Mastering Spring’s IOC Container: Concepts, Types, and Startup Steps

This article explains the Inversion of Control principle, defines what an IOC container is, compares Spring’s BeanFactory and ApplicationContext, and walks through the three-stage startup process—including loading configurations, registering bean definitions, and instantiating beans with automatic dependency injection.

Backend DevelopmentIoCJava
0 likes · 5 min read
Mastering Spring’s IOC Container: Concepts, Types, and Startup Steps
Top Architect
Top Architect
Sep 15, 2024 · Backend Development

Overview of Common Spring Utility Classes

This article presents a comprehensive collection of frequently used Spring framework utility classes—including Assert, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, ReflectionUtils, and AopUtils—explaining their purpose, typical use cases, and providing code snippets for each method to help developers avoid redundant implementations.

AOPJavaReflection
0 likes · 18 min read
Overview of Common Spring Utility Classes
Top Architect
Top Architect
Sep 15, 2024 · Backend Development

Understanding ForkJoinPool: Theory, Implementation, and Performance Evaluation

This article introduces the Fork/Join model and ForkJoinPool in Java, explains divide‑and‑conquer principles, provides sample RecursiveTask code for summing ranges, analyzes pool construction, task submission, work‑stealing, monitoring methods, and presents performance experiments highlighting task granularity impact.

ConcurrencyDivideAndConquerForkJoinPool
0 likes · 28 min read
Understanding ForkJoinPool: Theory, Implementation, and Performance Evaluation
Java Tech Enthusiast
Java Tech Enthusiast
Sep 15, 2024 · Fundamentals

Evolution and Family Trees of Programming Languages

Programming languages have evolved from early pioneers like FORTRAN, LISP, and ALGOL into dozens of modern families—most notably the C family that inherited ideas from ALGOL and FORTRAN—while languages such as Rust and Swift demonstrate contemporary blends of concepts from multiple ancestral lineages.

C familyJavalanguage evolution
0 likes · 4 min read
Evolution and Family Trees of Programming Languages
Java Tech Enthusiast
Java Tech Enthusiast
Sep 14, 2024 · Backend Development

Structured Logging in Spring Boot 3.4: JSON, ECS, and Custom Formats

Spring Boot 3.4 adds built‑in support for structured logging with ready‑made JSON formats such as Elastic Common Schema, lets you configure console or file outputs, enrich logs via MDC or the fluent API, and enables custom formatters—including a JsonWriter‑based example—for fully tailored, machine‑readable log entries.

ECSJSONJava
0 likes · 8 min read
Structured Logging in Spring Boot 3.4: JSON, ECS, and Custom Formats
IT Services Circle
IT Services Circle
Sep 14, 2024 · Backend Development

Spring Transaction Pitfalls: Common Scenarios Where Transactions Fail and How to Fix Them

This article explains the most common reasons why Spring @Transactional annotations may become ineffective or fail to roll back, covering access‑modifier issues, final methods, internal calls, self‑injection, multithreading, unsupported table engines, mis‑configured propagation, exception handling, nested transactions, large‑transaction problems, and the advantages of programmatic transaction management.

AOPDatabaseJava
0 likes · 20 min read
Spring Transaction Pitfalls: Common Scenarios Where Transactions Fail and How to Fix Them
macrozheng
macrozheng
Sep 14, 2024 · Backend Development

Mastering Activiti: Build Scalable Workflow Engines in Minutes

This article walks you through designing, deploying, and managing a multi‑level approval workflow using the Activiti engine, covering BPMN diagram creation, Spring Boot integration, database schema, API usage, code examples, and best practices for extending processes without additional code.

ActivitiBPMNJava
0 likes · 26 min read
Mastering Activiti: Build Scalable Workflow Engines in Minutes
Architect
Architect
Sep 13, 2024 · Operations

Introducing MyPerf4J: A High‑Performance Java Monitoring and Statistics Tool

The article presents MyPerf4J, a Java‑agent based, low‑overhead performance monitoring library that provides real‑time metrics such as method latency, QPS, memory usage, GC statistics, and class loading, along with quick‑start instructions, configuration details, and open‑source links for Java backend services.

BackendJavaJavaAgent
0 likes · 7 min read
Introducing MyPerf4J: A High‑Performance Java Monitoring and Statistics Tool
IT Services Circle
IT Services Circle
Sep 13, 2024 · Backend Development

Comprehensive Java Backend Interview Guide: Collections, JVM, OS, Networking, MySQL, Redis, and Algorithms

This article provides a thorough Java backend interview preparation guide covering collection frameworks, JVM architecture and garbage‑collection, operating‑system thread vs process concepts, TCP handshake and termination, MySQL transaction ACID properties and concurrency anomalies, Redis cache consistency strategies, and a sample algorithm problem.

JVMJavaMySQL
0 likes · 18 min read
Comprehensive Java Backend Interview Guide: Collections, JVM, OS, Networking, MySQL, Redis, and Algorithms
Java Tech Enthusiast
Java Tech Enthusiast
Sep 13, 2024 · Backend Development

Performance Tuning Guide for Undertow Web Server

This guide explains how to boost Undertow’s performance—outpacing Tomcat—by tuning I/O and worker thread counts, buffer sizes, timeouts, disabling unused features, using programmatic customizers, and enabling HTTP/2, with example application.yml settings for optimal speed and memory usage.

JavaWeb serverconfiguration
0 likes · 5 min read
Performance Tuning Guide for Undertow Web Server
Selected Java Interview Questions
Selected Java Interview Questions
Sep 13, 2024 · Backend Development

Using Apache Commons GenericObjectPool for Process Pooling in Java

This article explains how Java developers can leverage Apache Commons Pool's GenericObjectPool to implement custom process pooling, covering the required factory interface, configuration options, and practical code examples for creating, borrowing, and returning pooled process objects to improve performance.

Apache CommonsBackendGenericObjectPool
0 likes · 8 min read
Using Apache Commons GenericObjectPool for Process Pooling in Java
macrozheng
macrozheng
Sep 13, 2024 · Backend Development

Mastering Apache Commons StringUtils: When to Use isEmpty, isBlank, and More

This article explains the differences among Apache Commons Lang's StringUtils methods—such as isEmpty, isBlank, isNotEmpty, isAnyEmpty, isNoneEmpty, and their variants—providing code examples, usage guidelines, and practical tips for Java developers to avoid common pitfalls when handling empty or blank strings.

Apache CommonsJavaStringUtils
0 likes · 7 min read
Mastering Apache Commons StringUtils: When to Use isEmpty, isBlank, and More
Eric Tech Circle
Eric Tech Circle
Sep 12, 2024 · Backend Development

Build a Spring Boot 3.x Microservice OAuth2 Authorization Server from Scratch

This guide walks through creating a Spring Boot 3.3.3 microservice permission framework with OAuth2, covering technology stack, core features, project structure, step‑by‑step service startup, token acquisition, API calls, and provides the complete source repository for hands‑on experimentation.

Authorization ServerBackend DevelopmentJava
0 likes · 8 min read
Build a Spring Boot 3.x Microservice OAuth2 Authorization Server from Scratch
Lobster Programming
Lobster Programming
Sep 12, 2024 · Backend Development

Mastering the Chain of Responsibility Pattern in Java Spring: A Step‑by‑Step Guide

This article explains the Chain of Responsibility design pattern using a real‑world iron‑chain analogy, then demonstrates a complete Java Spring implementation for order validation, including interface definition, abstract base class, concrete handlers, Spring configuration, service, and controller code.

Chain of ResponsibilityJavadesign pattern
0 likes · 6 min read
Mastering the Chain of Responsibility Pattern in Java Spring: A Step‑by‑Step Guide
Java Tech Enthusiast
Java Tech Enthusiast
Sep 12, 2024 · Backend Development

Rate Limiting Algorithms and Implementations in Java Microservices

The article explains service rate limiting and demonstrates six Java implementations—Fixed Window, Sliding Window, Leaky Bucket, Token Bucket, Sentinel middleware, and Spring Cloud Gateway—detailing their algorithms, code examples, and configuration to protect microservices from overload.

JavaRate Limitingalgorithm
0 likes · 20 min read
Rate Limiting Algorithms and Implementations in Java Microservices
FunTester
FunTester
Sep 12, 2024 · Backend Development

Choosing the Right Spring HTTP Client: RestTemplate vs WebClient vs RestClient

Spring offers multiple HTTP clients—RestTemplate, WebClient, and the newer RestClient—each with distinct features, performance characteristics, and suitability for different scenarios, and this guide compares their core capabilities, advantages, drawbacks, and best-use cases to help developers select the optimal client for their projects.

BackendHTTP clientJava
0 likes · 15 min read
Choosing the Right Spring HTTP Client: RestTemplate vs WebClient vs RestClient
Sohu Tech Products
Sohu Tech Products
Sep 11, 2024 · Backend Development

Optimizing an Audit System Processing Chain for Traffic Spikes Using Chain of Responsibility and Sliding‑Window Detection

To prevent audit pipelines from choking during traffic surges, the article proposes augmenting the classic Chain of Responsibility with a sliding‑window anomaly detector, a statistically‑driven dynamic detector, a rule‑based backflow mechanism, and AI‑powered traffic forecasting, enabling adaptive routing and proactive scaling.

BackendJavaSliding Window
0 likes · 16 min read
Optimizing an Audit System Processing Chain for Traffic Spikes Using Chain of Responsibility and Sliding‑Window Detection
Efficient Ops
Efficient Ops
Sep 11, 2024 · Backend Development

Why Do MySQL and Java Processes Hit 900% CPU? Proven Diagnosis & Fixes

Learn how to identify and resolve extreme CPU usage spikes—up to 900%—in MySQL and Java applications by using top, show processlist, indexing, caching, thread analysis, and code adjustments, with real‑world examples and step‑by‑step command guides.

CPU optimizationJavaMySQL
0 likes · 11 min read
Why Do MySQL and Java Processes Hit 900% CPU? Proven Diagnosis & Fixes
Top Architect
Top Architect
Sep 11, 2024 · Backend Development

Implementing a Student Leave Approval Workflow with Flowable and Spring Boot

This article provides a step‑by‑step guide to building a student leave approval process using Flowable BPMN, Spring Boot 2.7.5, MySQL, and related dependencies, covering environment setup, Maven configuration, application properties, Java classes, REST endpoints, diagram generation, and database tables.

BPMNFlowableJava
0 likes · 18 min read
Implementing a Student Leave Approval Workflow with Flowable and Spring Boot
Java Interview Crash Guide
Java Interview Crash Guide
Sep 10, 2024 · Backend Development

How to Replace Cluttered if…else… with Java 8 Functional Interfaces

Learn how to eliminate repetitive if…else… statements in Java by leveraging Java 8’s functional interfaces—such as Supplier, Consumer, Runnable, and custom Function interfaces—through clear examples, code snippets, and step‑by‑step guidance for defining, implementing, and using these interfaces to simplify exception handling and branch logic.

Functional InterfaceJavaLambda
0 likes · 7 min read
How to Replace Cluttered if…else… with Java 8 Functional Interfaces
JavaEdge
JavaEdge
Sep 10, 2024 · Backend Development

Building a RabbitMQ RPC Service in Java: From Client to Server

This tutorial walks through creating a remote procedure call (RPC) system with RabbitMQ in Java, covering client and server design, callback queues, correlation IDs, code examples, deployment steps, scalability benefits, and common pitfalls to avoid.

BackendJavaMessaging
0 likes · 9 min read
Building a RabbitMQ RPC Service in Java: From Client to Server
Java Tech Enthusiast
Java Tech Enthusiast
Sep 10, 2024 · Backend Development

Thread Pool Data Persistence in Java Systems

The article explains how using a database‑backed persistence layer for Java thread‑pool tasks prevents data loss during service downtime by storing tasks before submission, tracking status and retries, and employing idempotent processing with configurable pool sizes and scheduled reprocessing of failed or pending jobs.

Backend DevelopmentData PersistenceError Handling
0 likes · 7 min read
Thread Pool Data Persistence in Java Systems
Selected Java Interview Questions
Selected Java Interview Questions
Sep 10, 2024 · Backend Development

Graceful Shutdown in Spring Boot: Mechanisms, Code Samples, and Configuration

This article explains how Spring Boot handles graceful shutdown in Kubernetes, manual Actuator shutdown, SIGTERM handling, Tomcat graceful termination, and Logback log flushing, providing detailed code examples, configuration snippets, and the underlying shutdown hook mechanisms that ensure resources are released cleanly.

GracefulShutdownJavaSpringBoot
0 likes · 18 min read
Graceful Shutdown in Spring Boot: Mechanisms, Code Samples, and Configuration
macrozheng
macrozheng
Sep 10, 2024 · Backend Development

Automate User and Order ID Logging in Spring Boot with MDC and AOP

This guide explains how to automatically inject userId and orderId into log statements in a Spring Boot microservice by configuring Log4j2 patterns, using MDC to store context variables, and creating a custom @UserLog annotation with an AOP aspect that populates the MDC before method execution.

AOPJavaLogging
0 likes · 9 min read
Automate User and Order ID Logging in Spring Boot with MDC and AOP
JavaEdge
JavaEdge
Sep 9, 2024 · Backend Development

Avoid Common Pitfalls When Implementing WeChat Pay v2: A Backend Guide

This article outlines essential backend best practices for integrating WeChat Pay v2, covering correct handling of order amounts, trade type fields, second signatures, merchant binding, currency units, duplicate consumption prevention, payment result verification, non‑transactional operation logging, and the unified order API.

BackendDuplicate PreventionJava
0 likes · 6 min read
Avoid Common Pitfalls When Implementing WeChat Pay v2: A Backend Guide
Architect
Architect
Sep 9, 2024 · Backend Development

Understanding Redisson DelayedQueue: Internal Mechanisms and Practical Usage

This article explains how Redisson's DelayedQueue works internally, covering its data structures, the basic workflow for sending and receiving delayed messages, the initialization process, and the scheduling logic that moves expired items from the delay queue to the target queue.

DelayedQueueDistributed SystemsJava
0 likes · 16 min read
Understanding Redisson DelayedQueue: Internal Mechanisms and Practical Usage
JD Tech
JD Tech
Sep 9, 2024 · Backend Development

JADE Dynamic Thread Pool Integration and Visualization Platform Practice

This article explains how to integrate JD's JADE dynamic thread‑pool component with the Wanxiang visualization platform, covering Maven dependencies, configuration files, Spring bean setup, thread‑pool creation, runtime monitoring, underlying source‑code principles, and common pitfalls for stable backend services.

Dynamic Thread PoolJADEJava
0 likes · 20 min read
JADE Dynamic Thread Pool Integration and Visualization Platform Practice
Top Architect
Top Architect
Sep 9, 2024 · Backend Development

Backend Development Guide: Spring Boot Project Initialization, Version Management, and Common Utilities

This article walks through the challenges of setting up a Java backend environment, demonstrates how to create a Spring Boot project, explains version compatibility between Spring Cloud, Spring Boot, and Kafka, and provides reusable code snippets for exception handling, logging, CORS, Swagger, and response wrapping, along with recommended tools.

Backend DevelopmentJavaMaven
0 likes · 13 min read
Backend Development Guide: Spring Boot Project Initialization, Version Management, and Common Utilities
Code Ape Tech Column
Code Ape Tech Column
Sep 9, 2024 · Backend Development

Implementing Asynchronous Requests in Spring Boot: Callable, WebAsyncTask, and DeferredResult

This article explains how Spring Boot supports asynchronous request processing using Servlet 3.0 features and four approaches—AsyncContext, Callable, WebAsyncTask, and DeferredResult—provides code examples, thread‑pool configuration, and guidance on when to apply async handling to improve throughput.

AsynchronousCallableDeferredResult
0 likes · 9 min read
Implementing Asynchronous Requests in Spring Boot: Callable, WebAsyncTask, and DeferredResult
Java High-Performance Architecture
Java High-Performance Architecture
Sep 9, 2024 · Backend Development

Designing a Scalable WebSocket Messaging Service with Reliable RabbitMQ Integration

This article outlines a comprehensive backend design that abstracts WebSocket into a reusable communication service, details project structure, business processes, reliability mechanisms for RabbitMQ, message classification, API design, and a unified message format to enable plug‑and‑play real‑time messaging across various Java applications.

Backend ArchitectureJavaMessage queue
0 likes · 9 min read
Designing a Scalable WebSocket Messaging Service with Reliable RabbitMQ Integration