Tagged articles
4050 articles
Page 30 of 41
JavaEdge
JavaEdge
Apr 29, 2021 · Interview Experience

Mastering Java Semaphore: How init, down, and up Ensure Thread Safety

This article explains the semaphore model, its three core operations (init, down, up), how they manage counters and waiting queues, and demonstrates proper usage in Java to achieve mutual exclusion and resource limiting, complete with code examples and visual diagrams.

backend-developmentinterviewjava
0 likes · 6 min read
Mastering Java Semaphore: How init, down, and up Ensure Thread Safety
High Availability Architecture
High Availability Architecture
Apr 29, 2021 · Backend Development

C++ Backend Performance Optimization at Baidu: Memory Access, Allocation, and Concurrency Techniques

This article shares Baidu C++ engineers' practical performance‑optimisation techniques, covering memory‑access patterns, custom allocation strategies, string handling, protobuf handling, cache‑line considerations and memory‑order semantics to achieve significant latency and cost reductions in large‑scale backend services.

backend-developmentmemory allocationperformance optimization
0 likes · 32 min read
C++ Backend Performance Optimization at Baidu: Memory Access, Allocation, and Concurrency Techniques
Intelligent Backend & Architecture
Intelligent Backend & Architecture
Apr 29, 2021 · Backend Development

Why Netty Is the Go-To Framework for High‑Performance Java Backend Development

This article explains how Netty, an asynchronous event‑driven network framework built on Java NIO, simplifies the creation of high‑performance, scalable web servers and client components by handling I/O streams, connection management, threading, zero‑copy transfers, and offering flexible reactor thread models for various application scenarios.

NettyNetwork programmingReactor Model
0 likes · 39 min read
Why Netty Is the Go-To Framework for High‑Performance Java Backend Development
Java Interview Crash Guide
Java Interview Crash Guide
Apr 29, 2021 · Backend Development

How Spring MVC Simplifies Server‑Side Development: From Servlets to DispatcherServlet

This article walks through the evolution from traditional Servlets to Spring MVC's DispatcherServlet, explaining how each component—Servlet, BaseServlet, DispatcherServlet, HandlerMapping, HandlerInterceptor, HandlerExecutionChain, ModelAndView, ViewResolver, and View—contributes to a cleaner, more modular server‑side architecture.

DispatcherServletHandlerMappingModelAndView
0 likes · 17 min read
How Spring MVC Simplifies Server‑Side Development: From Servlets to DispatcherServlet
Selected Java Interview Questions
Selected Java Interview Questions
Apr 29, 2021 · Backend Development

Understanding Spring MVC: From Servlets to DispatcherServlet and Request Handling

This article explains how Spring MVC evolved from basic Servlets to a two‑level controller architecture, detailing the roles of DispatcherServlet, HandlerMapping, HandlerInterceptor, ModelAndView, ViewResolver and View, and shows configuration examples that simplify server‑side development in Java web applications.

DispatcherServletHandlerMappingModelAndView
0 likes · 16 min read
Understanding Spring MVC: From Servlets to DispatcherServlet and Request Handling
Top Architect
Top Architect
Apr 29, 2021 · Backend Development

An Introduction to GraphQL: Concepts, Benefits, and Architectural Patterns

This article explains the origins and limitations of REST APIs, introduces GraphQL as a flexible alternative, describes its core concepts such as schema, types, and modifiers, and outlines various server‑side and client‑side implementations, tools, and deployment architectures for modern backend development.

APIData FetchingGraphQL
0 likes · 17 min read
An Introduction to GraphQL: Concepts, Benefits, and Architectural Patterns
Programmer DD
Programmer DD
Apr 29, 2021 · Backend Development

Why Misusing API Gateways and Service Registries Hurts Your Microservices

The article explains common mistakes of using API gateways together with service registries as internal proxies, shows how this adds latency and complexity, and offers guidance on when to use gateways versus direct service‑to‑service calls in microservice architectures.

Microservicesapi-gatewaybackend-development
0 likes · 6 min read
Why Misusing API Gateways and Service Registries Hurts Your Microservices
Java Interview Crash Guide
Java Interview Crash Guide
Apr 27, 2021 · Backend Development

Unveiling Spring Boot’s @SpringBootApplication: How It Powers Your App Startup

This article explains how the @SpringBootApplication annotation combines @Configuration, @EnableAutoConfiguration, and @ComponentScan, walks through the SpringApplication.run execution flow, and reveals the inner workings of Spring Boot’s auto‑configuration mechanism using SpringFactoriesLoader and META‑INF/spring.factories.

Spring Bootannotationsauto-configuration
0 likes · 16 min read
Unveiling Spring Boot’s @SpringBootApplication: How It Powers Your App Startup
IT Architects Alliance
IT Architects Alliance
Apr 26, 2021 · Backend Development

How Ctrip Built Hermes: A Deep Dive into Scalable Message Queue Architecture

This article examines Ctrip’s Hermes messaging system, tracing its evolution from a simple Mongo‑based queue to a broker‑centric, MySQL/Kafka hybrid architecture, and explains the design choices, performance optimizations, cluster management via lease‑based meta‑server, and lessons learned for building high‑throughput, low‑latency MQ solutions.

CtripDistributed SystemsHermes
0 likes · 22 min read
How Ctrip Built Hermes: A Deep Dive into Scalable Message Queue Architecture
Top Architect
Top Architect
Apr 26, 2021 · Backend Development

Zookeeper Overview: Installation, Features, and Theory for High‑Concurrency Distributed Systems

This article introduces Zookeeper as a high‑performance coordination service for distributed systems, covering its role in concurrent environments, installation steps on Linux, core characteristics, data model, session and watch mechanisms, and practical usage examples to help readers understand and apply it in backend development.

Coordination ServiceZooKeeperbackend-development
0 likes · 14 min read
Zookeeper Overview: Installation, Features, and Theory for High‑Concurrency Distributed Systems
macrozheng
macrozheng
Apr 26, 2021 · Backend Development

How Much Memory Does a Java Object Really Use?

Understanding the actual memory footprint of Java objects—including headers, class pointers, fields, and alignment—reveals hidden waste, and the article provides calculations for Integer objects, arrays, and collections, plus practical guidelines to reduce memory usage by preferring primitive types, smaller fields, and arrays over collections.

Memory ManagementObject Layoutbackend-development
0 likes · 9 min read
How Much Memory Does a Java Object Really Use?
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 25, 2021 · Backend Development

Three Ways to Create Threads in Java: Extending Thread, Implementing Runnable, and Using Callable

Through a whimsical first‑person narrative, the article explains three Java thread‑creation techniques—extending Thread, implementing Runnable (including anonymous and lambda forms), and using Callable with FutureTask—to illustrate their syntax, usage, and the ability to retrieve thread results.

CallableRunnableThread
0 likes · 7 min read
Three Ways to Create Threads in Java: Extending Thread, Implementing Runnable, and Using Callable
Top Architect
Top Architect
Apr 25, 2021 · Backend Development

Seven RabbitMQ Messaging Patterns and Their Application Scenarios with Java Code Samples

This article introduces seven RabbitMQ messaging patterns—Simple, Work Queue, Publish/Subscribe, Routing, Topics, RPC, and Publisher Confirms—explains their typical use cases such as email delivery, order processing, cache synchronization, and provides complete Java code examples for each pattern.

Messaging PatternsRabbitMQbackend-development
0 likes · 15 min read
Seven RabbitMQ Messaging Patterns and Their Application Scenarios with Java Code Samples
Programmer DD
Programmer DD
Apr 25, 2021 · Backend Development

Why Spring Dominates Java Development: Insights from the 2020 State of Spring Report

The 2020 State of Spring report reveals that the majority of Java developers favor Spring/Spring Boot, spending more time on unit testing, achieving higher code quality, and appreciating benefits such as easier web/API setup and robust testing support, with user adoption rising from 60% to 86%.

Framework Surveybackend-developmentjava
0 likes · 6 min read
Why Spring Dominates Java Development: Insights from the 2020 State of Spring Report
21CTO
21CTO
Apr 24, 2021 · Backend Development

Unlocking C++ Performance: Surprising Memory‑Access Tricks from Baidu Engineers

This article explores Baidu C++ engineers' deep‑dive into performance optimization, covering memory‑access patterns, string‑buffer handling, protobuf merging, malloc strategies, job‑arena allocation, cache‑line effects, and modern memory‑order semantics to achieve multi‑fold speedups in large‑scale backend services.

C++Protobufbackend-development
0 likes · 33 min read
Unlocking C++ Performance: Surprising Memory‑Access Tricks from Baidu Engineers
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 23, 2021 · Backend Development

Master RabbitMQ Dead-Letter Queues: When and How Messages Get Redirected

This guide explains RabbitMQ dead-letter queues, detailing the conditions that cause messages to become dead letters, how to configure exchanges and queues with x-dead-letter parameters, and demonstrates three testing methods—reject/nack, TTL expiration, and max-length overflow—using Spring Boot code examples.

Dead Letter QueueMessage QueuingRabbitMQ
0 likes · 7 min read
Master RabbitMQ Dead-Letter Queues: When and How Messages Get Redirected
Laravel Tech Community
Laravel Tech Community
Apr 22, 2021 · Backend Development

zip_close() – Close a ZIP Archive File (PHP)

The PHP function zip_close() terminates a ZIP archive opened with zip_open(), taking the ZIP resource as its sole argument, performs no return value, and is essential for properly releasing file handles in backend development.

PHPbackend-developmentzip_close
0 likes · 1 min read
zip_close() – Close a ZIP Archive File (PHP)
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 21, 2021 · Backend Development

Understanding Java Thread Pools: Core Concepts, Rejection Policies, and Sizing Guidelines

This article explains Java thread pool fundamentals—including core parameters, task submission behavior, rejection policies, queue selection, thread factory usage, keep-alive settings—and provides practical guidance on determining optimal thread counts for I/O‑bound and CPU‑bound workloads.

ThreadPoolbackend-developmentconcurrency
0 likes · 11 min read
Understanding Java Thread Pools: Core Concepts, Rejection Policies, and Sizing Guidelines
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 20, 2021 · Backend Development

Mastering Aviator: A High‑Performance Java Expression Engine for Backend Development

Aviator is a lightweight, high‑performance Java expression evaluation engine that compiles expressions to JVM bytecode, offering rich operator support, custom functions, variable handling, and compilation for reuse, while detailing its features, limitations, dependency setup, and multiple code examples for practical backend integration.

AviatorCode SamplesCustom Functions
0 likes · 9 min read
Mastering Aviator: A High‑Performance Java Expression Engine for Backend Development
Programmer DD
Programmer DD
Apr 20, 2021 · Information Security

What’s the Real Difference Between WebSecurity and HttpSecurity in Spring Security?

This article explains the core roles of HttpSecurity and WebSecurity in Spring Security, how they build and manage SecurityFilterChain objects, the purpose of FilterChainProxy, and why WebSecurity serves as the framework’s external entry point while HttpSecurity defines internal security policies.

HttpSecuritySecurityFilterChainWebSecurity
0 likes · 6 min read
What’s the Real Difference Between WebSecurity and HttpSecurity in Spring Security?
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 19, 2021 · Backend Development

How to Build Scalable Business Architecture: Standards, Reuse, and Continuous Refactoring

This article examines common pain points in building and maintaining business applications, proposes a design specification that standardizes technical details, encourages component reuse, promotes continuous refactoring, and introduces a service orchestration engine to streamline complex workflow integration.

Service OrchestrationSoftware Architecturebackend-development
0 likes · 15 min read
How to Build Scalable Business Architecture: Standards, Reuse, and Continuous Refactoring
Manbang Technology Team
Manbang Technology Team
Apr 16, 2021 · Backend Development

Deep Dive into Sentinel’s Core Slot‑Chain Mechanism and Entry Process

This article explains Sentinel’s internal flow‑control workflow by dissecting the entryWithPriority method, the construction of the ProcessorSlot chain, the role of each slot such as NodeSelectorSlot, ClusterBuilderSlot, StatisticSlot, and how the SPI‑based SlotChainBuilder enables extensible, high‑performance request limiting in Java middleware.

Flow ControlSlot Chainbackend-development
0 likes · 8 min read
Deep Dive into Sentinel’s Core Slot‑Chain Mechanism and Entry Process
Liangxu Linux
Liangxu Linux
Apr 13, 2021 · Backend Development

A Love Letter to HTTP: From GET to HTTP/2 Through a Romantic Timeline

This whimsical diary narrates the evolution of the HTTP protocol—from its humble GET request origins to the sophisticated features of HTTP/2—using a client‑server love story to illustrate methods, headers, pipelining, chunked transfer, and server push in an engaging, educational way.

HTTPbackend-developmentclient-server
0 likes · 8 min read
A Love Letter to HTTP: From GET to HTTP/2 Through a Romantic Timeline
Intelligent Backend & Architecture
Intelligent Backend & Architecture
Apr 13, 2021 · Backend Development

Why Spring Boot Revolutionizes Backend Development: A Complete Guide

This article explains how Spring Boot, a Pivotal‑backed extension of the Spring framework, simplifies Java backend development by providing auto‑configuration, starter dependencies, embedded servers, and seamless integration with micro‑service architectures, while also covering core annotations, configuration files, security, and deployment options.

ConfigurationMicroservicesSpring Boot
0 likes · 35 min read
Why Spring Boot Revolutionizes Backend Development: A Complete Guide
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 12, 2021 · Backend Development

Understanding Java CyclicBarrier: Usage, Implementation Details, and Comparison with CountDownLatch

This article explains the concept, practical usage, internal implementation, and key methods of Java's CyclicBarrier, compares it with CountDownLatch, and provides a complete code example demonstrating how multiple threads can repeatedly synchronize at a reusable barrier.

CountDownLatchCyclicBarrierbackend-development
0 likes · 8 min read
Understanding Java CyclicBarrier: Usage, Implementation Details, and Comparison with CountDownLatch
Intelligent Backend & Architecture
Intelligent Backend & Architecture
Apr 12, 2021 · Backend Development

Master Spring Boot: From Basics to Advanced Annotations and Best Practices

This comprehensive guide explains what Spring Boot is, why it was created for micro‑service development, how it simplifies configuration with starters and auto‑configuration, and provides detailed coverage of core annotations, configuration files, security, CORS, transaction management, and deployment options for Java backend developers.

ConfigurationMicroservicesSpring Boot
0 likes · 38 min read
Master Spring Boot: From Basics to Advanced Annotations and Best Practices
MaGe Linux Operations
MaGe Linux Operations
Apr 8, 2021 · Backend Development

Why We Skipped Docker: Building Deployable Go Binaries in Minutes

Instead of Docker, we leveraged Go 1.16’s //embed feature to create a single binary for our web service, detailing the rapid build, test, and deployment steps, and arguing that Docker’s overhead isn’t necessary for small teams focused on fast delivery.

DeploymentGobackend-development
0 likes · 4 min read
Why We Skipped Docker: Building Deployable Go Binaries in Minutes
IT Xianyu
IT Xianyu
Apr 7, 2021 · Backend Development

EasyCaptcha Java Captcha Library – Features, Integration, and Usage Guide

This article introduces EasyCaptcha, a Java graphic captcha library supporting GIF, Chinese characters, and arithmetic types, explains how to integrate it via Maven, demonstrates usage in SpringBoot with controller and HTML snippets, and provides demo links and a concise summary for developers.

Captchabackend-developmentjava
0 likes · 3 min read
EasyCaptcha Java Captcha Library – Features, Integration, and Usage Guide
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 7, 2021 · Backend Development

Nine MyBatis SQL Tricks for SpringBoot Web Applications (MySQL Example)

This article presents nine practical MyBatis techniques—including pagination, preset column selection, one‑to‑many and one‑to‑one associations, foreach‑in queries, dynamic where clauses, choose/otherwise logic, hidden _parameter usage, and dynamic set updates—illustrated with SpringBoot and MySQL code examples.

Dynamic SQLMyBatisSpringBoot
0 likes · 6 min read
Nine MyBatis SQL Tricks for SpringBoot Web Applications (MySQL Example)
Top Architect
Top Architect
Apr 6, 2021 · Backend Development

Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free

The article explains how Java 8's ConcurrentHashMap implements a lock‑free get() operation by replacing the Segment design with Node objects, using volatile fields and CAS, and how the volatile‑marked table array ensures visibility during resizing, making reads both safe and efficient.

ConcurrentHashMapbackend-developmentconcurrency
0 likes · 10 min read
Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free
Top Architect
Top Architect
Apr 5, 2021 · Backend Development

Integrating Swagger (Springfox) 3.0.0 with Spring Boot for Automatic API Documentation

This article explains how to integrate Swagger using Springfox 3.0.0 into a Spring Boot project, covering required dependencies, configuration files, annotations, new features, compatibility requirements, and provides a complete example with code snippets for generating interactive OpenAPI documentation.

API documentationOpenAPISpring Boot
0 likes · 11 min read
Integrating Swagger (Springfox) 3.0.0 with Spring Boot for Automatic API Documentation
Selected Java Interview Questions
Selected Java Interview Questions
Apr 5, 2021 · Backend Development

Understanding Thread Safety in Java: StringBuilder, StringBuffer, and Servlets

This article explains the thread‑safety differences between StringBuilder and StringBuffer, demonstrates the problems of using mutable shared objects in multithreaded Java code, presents three solutions, and discusses why Servlets are not thread‑safe by default, highlighting visibility and ordering concepts.

Servletbackend-developmentconcurrency
0 likes · 10 min read
Understanding Thread Safety in Java: StringBuilder, StringBuffer, and Servlets
Java Interview Crash Guide
Java Interview Crash Guide
Apr 2, 2021 · Backend Development

How MyBatis Leverages 9 Classic Design Patterns in Its Core

This article explores how MyBatis implements nine fundamental design patterns—including Builder, Factory, Singleton, Proxy, Composite, Template Method, Adapter, Decorator, and Iterator—by examining its source code, illustrating each pattern with concrete classes, code snippets, and diagrams to deepen developers' understanding of design patterns in practice.

BuilderDecoratorFactory
0 likes · 19 min read
How MyBatis Leverages 9 Classic Design Patterns in Its Core
HelloTech
HelloTech
Apr 2, 2021 · Backend Development

Traffic Governance and Protection: Threshold Configuration

Effective traffic governance and protection rely on properly configuring thresholds—either a fixed global limit that stays constant regardless of node count, or a per‑machine allocation that scales the total capacity as nodes are added or removed—to prevent sudden surges from overwhelming services and ensure high availability.

Cluster Managementbackend-developmenthigh availability
0 likes · 4 min read
Traffic Governance and Protection: Threshold Configuration
Selected Java Interview Questions
Selected Java Interview Questions
Apr 2, 2021 · Backend Development

Design Patterns in MyBatis: Builder, Factory, Singleton, Proxy, Composite, Template Method, Adapter, Decorator, and Iterator

This article analyses how MyBatis applies nine classic design patterns—Builder, Factory, Singleton, Proxy, Composite, Template Method, Adapter, Decorator, and Iterator—by examining its source code, illustrating each pattern with explanations and concrete Java examples to deepen understanding of software design in backend development.

Design PatternsMyBatisSoftware Architecture
0 likes · 20 min read
Design Patterns in MyBatis: Builder, Factory, Singleton, Proxy, Composite, Template Method, Adapter, Decorator, and Iterator
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 2, 2021 · Backend Development

Implementing Max‑Effort Notification with Spring Boot & RabbitMQ

This article explains the concept of max‑effort notification, contrasts it with reliable messaging, and provides a complete Spring Boot 2.4.9 and RabbitMQ 3.7.4 implementation—including project structure, configuration, entity models, repositories, services, controllers, and message listeners—plus testing steps and results.

Max Effort NotificationMessage RetryRabbitMQ
0 likes · 11 min read
Implementing Max‑Effort Notification with Spring Boot & RabbitMQ
dbaplus Community
dbaplus Community
Apr 1, 2021 · Backend Development

Avoid Kafka Pitfalls: Ensuring Message Order, Handling Retries, and Preventing Backlog

This article shares a two‑year journey of using Kafka in a high‑traffic restaurant ordering system, covering why message order matters, how network glitches and partition routing cause failures, and the practical retry, partition‑balancing, and database strategies that finally eliminated backlog and duplication issues.

KafkaMessage OrderingPartition Balancing
0 likes · 19 min read
Avoid Kafka Pitfalls: Ensuring Message Order, Handling Retries, and Preventing Backlog
Baidu Geek Talk
Baidu Geek Talk
Mar 31, 2021 · Backend Development

Design and Implementation of Baidu Baijiahao Online Video Editor

Baidu’s Baijiahao team built a web‑based video editor that uses a PHP backend to translate timeline JSON into FFmpeg command pipelines, a React front‑end for drag‑and‑drop editing and preview, and a Redis‑driven scheduler to process and store videos in Baidu’s cloud.

BaiduDistributed SchedulingVideo Editing
0 likes · 18 min read
Design and Implementation of Baidu Baijiahao Online Video Editor
Architect's Tech Stack
Architect's Tech Stack
Mar 29, 2021 · Backend Development

Using IntelliJ IDEA Live Templates to Simplify Java Stream Collectors

This article explains how to upgrade Java code to use lambda expressions and the Stream API, highlights the inconvenience of repeatedly writing collect(Collectors.toList()) calls, and shows how IntelliJ IDEA's Live Templates can automate common collector patterns to boost productivity.

CollectorsIntelliJ IDEALive Templates
0 likes · 6 min read
Using IntelliJ IDEA Live Templates to Simplify Java Stream Collectors
Java Captain
Java Captain
Mar 26, 2021 · Backend Development

Debunking Common Criticisms of Lombok: A Counterargument

The article challenges typical objections to using Lombok—such as JDK version issues, forced plugin installation, reduced readability, increased coupling, and perceived technical debt—by providing detailed rebuttals that argue Lombok remains practical and beneficial for Java backend development.

JDK CompatibilityLombokbackend-development
0 likes · 6 min read
Debunking Common Criticisms of Lombok: A Counterargument
Python Programming Learning Circle
Python Programming Learning Circle
Mar 23, 2021 · Backend Development

Understanding Node.js Asynchronous Execution Model and async_hooks

This article explains Node.js’s asynchronous execution model, defines key concepts such as execution frames and continuation points, demonstrates event flow with code examples, and shows how the async_hooks API and AsyncLocalStorage can be used for tracing, debugging, and performance analysis of backend JavaScript applications.

AsyncLocalStorageNode.jsasync_hooks
0 likes · 13 min read
Understanding Node.js Asynchronous Execution Model and async_hooks
NiuNiu MaTe
NiuNiu MaTe
Mar 23, 2021 · Backend Development

Quickly Master Go: Install, Code, Concurrency, and Testing

Learn how to set up Go in Linux, macOS, and Windows, understand its core syntax, manage packages, work with variables, arrays, slices, maps, control structures, goroutines, channels, interfaces, write unit tests, use Go Convey, connect databases with GORM, and build simple web servers with the standard library or Gin.

GoWeb Developmentbackend-development
0 likes · 20 min read
Quickly Master Go: Install, Code, Concurrency, and Testing
Code Ape Tech Column
Code Ape Tech Column
Mar 23, 2021 · Backend Development

JDK 16 GA Release: New Features and Improvements

On March 16, OpenJDK announced the General Availability of JDK 16, a six‑month‑supported release that introduces 17 enhancements including a Vector API incubator, C++14 language support, Unix‑domain socket channels, pattern‑matching for instanceof, sealed classes, and broader platform ports.

JDK 16New FeaturesUnix Domain Sockets
0 likes · 6 min read
JDK 16 GA Release: New Features and Improvements
Programmer DD
Programmer DD
Mar 21, 2021 · Backend Development

What’s New in Spring Boot 2.4.4 and Spring Cloud 2020.0.2? A Complete Overview

This article provides a detailed overview of the latest Spring Boot 2.4.4 and Spring Cloud 2020.0.2 releases, highlighting key module upgrades, bug fixes, documentation improvements, and dependency updates, helping developers understand the enhancements and how to integrate them into their Java applications.

Release NotesSpring BootSpring Cloud
0 likes · 10 min read
What’s New in Spring Boot 2.4.4 and Spring Cloud 2020.0.2? A Complete Overview
21CTO
21CTO
Mar 19, 2021 · Backend Development

Why GraphQL Beats REST for Modern APIs: Benefits and Code Examples

This article compares REST and GraphQL, highlighting REST's issues like excessive round‑trips, over‑/under‑fetching, and rigidity, and shows how GraphQL solves them with single‑request queries and flexible data selection, while offering guidance on when to choose each approach.

Code ExamplesGraphQLWeb services
0 likes · 6 min read
Why GraphQL Beats REST for Modern APIs: Benefits and Code Examples
Yanxuan Tech Team
Yanxuan Tech Team
Mar 19, 2021 · Backend Development

How DDD Can Rescue a Decaying Warehouse Management System

This article examines the chronic decay of a complex warehouse inbound/outbound system, analyzes its tangled business logic and chaotic architecture, and presents a domain‑driven design solution with onion architecture, CQRS, and practical implementation steps to achieve clearer boundaries, higher cohesion, and sustainable evolution.

CQRSDDDarchitecture
0 likes · 15 min read
How DDD Can Rescue a Decaying Warehouse Management System
php Courses
php Courses
Mar 19, 2021 · Backend Development

Understanding PHP foreach Loop Syntax and Usage

This tutorial explains PHP's foreach loop syntax, illustrating how to iterate over arrays with value-only and key‑value formats, and how to traverse object properties, accompanied by complete code examples for each case.

array iterationbackend-developmentforeach
0 likes · 2 min read
Understanding PHP foreach Loop Syntax and Usage
Architect's Tech Stack
Architect's Tech Stack
Mar 19, 2021 · Backend Development

Introducing SOFABoot: An Enhanced Spring Boot Framework with Readiness Check, Class Isolation, and Log Isolation

This article introduces SOFABoot, an open‑source framework built on Spring Boot that adds readiness checks, classloader isolation, log space isolation, seamless SOFA middleware integration, modular development support, and provides a starter‑based programming model for large‑scale microservice architectures.

Class IsolationLog IsolationMicroservices
0 likes · 5 min read
Introducing SOFABoot: An Enhanced Spring Boot Framework with Readiness Check, Class Isolation, and Log Isolation
Alibaba Cloud Developer
Alibaba Cloud Developer
Mar 19, 2021 · Fundamentals

What Core Design Principles Drive Reliable Financial Software?

This article outlines practical software design principles—layered architecture, single responsibility, data redundancy, security, concurrency, and API design—derived from real‑world financial platform projects, showing how concrete rules help avoid coupling, data loss, and performance pitfalls.

api-designarchitecture principlesbackend-development
0 likes · 12 min read
What Core Design Principles Drive Reliable Financial Software?
Code Ape Tech Column
Code Ape Tech Column
Mar 19, 2021 · Backend Development

Top 15 Alibaba Developer Tools Every Backend Engineer Should Know

This article presents a curated list of fifteen Alibaba‑originated developer tools—including Arthas, Cloud Toolkit, ChaosBlade, Docsite, and more—detailing their purpose, typical use cases, tutorial links, and acquisition methods to help backend engineers boost productivity and reliability.

AlibabaCloud Nativebackend-development
0 likes · 13 min read
Top 15 Alibaba Developer Tools Every Backend Engineer Should Know
ITPUB
ITPUB
Mar 18, 2021 · Backend Development

From Senior Engineer to Architect: Mindset Shifts and Skill Gaps to Bridge

The article shares a senior developer’s firsthand observations on how architects differ in attitude, technical depth, system‑level responsibilities, and collaboration, offering practical steps and mindset changes needed to transition from senior engineering to a full‑stack architecture role.

Performance TestingSystem Designbackend-development
0 likes · 12 min read
From Senior Engineer to Architect: Mindset Shifts and Skill Gaps to Bridge
Top Architect
Top Architect
Mar 16, 2021 · Backend Development

Critiquing Lombok: Common Objections and Counterarguments

The article examines typical criticisms of the Lombok library—JDK compatibility, forced adoption, reduced readability, increased coupling, and perceived drawbacks—while providing detailed rebuttals that argue Lombok remains useful for Java backend development despite these concerns.

Lombokbackend-developmentcode-generation
0 likes · 6 min read
Critiquing Lombok: Common Objections and Counterarguments
Top Architect
Top Architect
Mar 16, 2021 · Backend Development

Implementing Delayed Message Queues with RabbitMQ and Spring Boot

This article explains how to implement delayed message delivery in RabbitMQ using the delayed‑message‑exchange plugin and Spring Boot, covering the shortcomings of traditional approaches, configuration of exchanges and queues, sending messages with delay headers, and a test demonstrating a 6‑second delayed receipt.

Message QueueRabbitMQSpring Boot
0 likes · 8 min read
Implementing Delayed Message Queues with RabbitMQ and Spring Boot
TAL Education Technology
TAL Education Technology
Mar 11, 2021 · Backend Development

Evolution of a Call Platform's System Architecture: From Monolith to Service Splitting, Governance, Horizontal Scaling, Distributed Databases, and Microservices

The article outlines how a call platform’s architecture progressed through successive stages—starting with a monolithic design, then business service splitting, service governance and isolated deployment, horizontal scaling, distributed database sharding, and finally micro‑service adoption—highlighting the problems each evolution solved and the new challenges introduced.

MicroservicesScalabilityService Splitting
0 likes · 13 min read
Evolution of a Call Platform's System Architecture: From Monolith to Service Splitting, Governance, Horizontal Scaling, Distributed Databases, and Microservices
Qunar Tech Salon
Qunar Tech Salon
Mar 10, 2021 · Backend Development

Deep Dive into epoll: Principles, Blocking, and I/O Multiplexing

This article provides an in‑depth exploration of Linux’s epoll mechanism, covering its blocking behavior, kernel‑level processing, NAPI optimization, comparisons with select/poll, and practical insights into I/O multiplexing, helping backend engineers understand performance characteristics and design efficient network services.

I/O MultiplexingLinux kernelNAPI
0 likes · 15 min read
Deep Dive into epoll: Principles, Blocking, and I/O Multiplexing
Fulu Network R&D Team
Fulu Network R&D Team
Mar 9, 2021 · Backend Development

Using FluentValidation for Model Validation in ASP.NET Core

This article explains how to integrate FluentValidation into ASP.NET Core for robust model validation, covering installation, defining validators, registering services, handling validation errors, conditional rules, cascade modes, asynchronous validation, and advanced features, with complete code examples.

ASP.NET CoreFluentValidationbackend-development
0 likes · 10 min read
Using FluentValidation for Model Validation in ASP.NET Core
Top Architect
Top Architect
Mar 8, 2021 · Backend Development

Integrating Swagger‑Bootstrap‑UI (Knife4j) into a Spring Boot Project

This tutorial explains how to replace the default Swagger UI with Swagger‑Bootstrap‑UI (now called Knife4j) in a Spring Boot application, covering Maven dependencies, configuration classes, common annotations, a sample controller, launch steps, and troubleshooting tips.

API documentationKnife4jSpring Boot
0 likes · 6 min read
Integrating Swagger‑Bootstrap‑UI (Knife4j) into a Spring Boot Project
Programmer DD
Programmer DD
Mar 4, 2021 · Backend Development

How to Seamlessly Integrate MongoDB with Spring Boot: A Step‑by‑Step Guide

This tutorial walks you through upgrading Spring Boot, introduces MongoDB basics, and provides a hands‑by‑step guide to adding the spring‑boot‑starter‑data‑mongodb dependency, defining entity and repository classes, writing unit tests, and configuring connection properties for robust backend data management.

MongoDBSpring Bootbackend-development
0 likes · 8 min read
How to Seamlessly Integrate MongoDB with Spring Boot: A Step‑by‑Step Guide
Liangxu Linux
Liangxu Linux
Mar 2, 2021 · Backend Development

How to Install Node.js on Linux Using NVM, Packages, and NodeSource

This guide walks you through installing Node.js on various Linux distributions by using NVM for version management, native package managers for stable releases, and the NodeSource repository for the latest versions, complete with commands, verification steps, and troubleshooting tips.

LinuxNVMNode.js
0 likes · 13 min read
How to Install Node.js on Linux Using NVM, Packages, and NodeSource
dbaplus Community
dbaplus Community
Mar 2, 2021 · Databases

How ByteDance Scaled Real‑Time Analytics with ClickHouse and Kafka Engine

This article details ByteDance's evolution from offline ClickHouse ingestion to a robust real‑time analytics pipeline, covering external transaction handling, risks of direct INSERTs, recommendation and ad‑delivery use cases, Kafka Engine design, multi‑threaded consumption, fault‑tolerance improvements, platform tooling, and future roadmap.

KafkaReal-time analyticsbackend-development
0 likes · 22 min read
How ByteDance Scaled Real‑Time Analytics with ClickHouse and Kafka Engine
Top Architect
Top Architect
Mar 2, 2021 · Information Security

Designing Secure API Authentication with Token and Signature in Java

This article explains how to secure app open‑API endpoints by using HTTPS, token‑based authentication, timestamp validation, and a URL‑signature algorithm implemented in Java, including detailed steps, interception rules, and sample code for generating and verifying signatures.

API Securitybackend-developmentjava
0 likes · 8 min read
Designing Secure API Authentication with Token and Signature in Java
Laravel Tech Community
Laravel Tech Community
Feb 27, 2021 · Backend Development

HHVM 4.98 Release: New Features, Major Changes, and Upcoming Deprecations

HHVM 4.98 has been officially released, ending support for version 4.92 while continuing maintenance for 4.93‑4.97 and LTS releases, introducing minor typechecker improvements, new error detection for conflicting constants, and outlining future deprecations such as the inst_meth function and stricter string concatenation rules.

Runtime ConfigurationTypecheckerbackend-development
0 likes · 3 min read
HHVM 4.98 Release: New Features, Major Changes, and Upcoming Deprecations
Xiao Lou's Tech Notes
Xiao Lou's Tech Notes
Feb 27, 2021 · Backend Development

Why Dubbo 2.7.x Can’t Return Implicit Parameters from Provider to Consumer

An in‑depth analysis reveals that Dubbo 2.7.x fails to propagate provider‑side implicit parameters back to the consumer because the new AsyncRpcResult/AppResponse architecture discards attachments, a change introduced for better async support, effectively making this behavior a bug in the 2.7 series.

AsyncRpcResultDubboImplicit Parameters
0 likes · 7 min read
Why Dubbo 2.7.x Can’t Return Implicit Parameters from Provider to Consumer
Programmer DD
Programmer DD
Feb 27, 2021 · Backend Development

Build a WebSSH Terminal with Spring Boot, WebSocket and xterm.js

This article walks through creating a WebSSH solution from scratch using Spring Boot, WebSocket, JSch and the xterm.js front‑end library, covering dependency setup, backend WebSocket configuration, message handling, SSH session management, and a minimal HTML/JS client to display a browser‑based terminal.

Spring BootWebSSHWebSocket
0 likes · 17 min read
Build a WebSSH Terminal with Spring Boot, WebSocket and xterm.js
Programmer DD
Programmer DD
Feb 27, 2021 · Backend Development

How Netflix’s Open‑Source DGS Framework Simplifies Java GraphQL Development

Netflix’s Domain Graph Service (DGS) framework, now open‑sourced, provides a Spring Boot‑based, annotation‑driven solution for building both standalone and federated GraphQL services, offering schema‑first and code‑first development, code generation, testing tools, and seamless integration with Netflix’s tracing and security infrastructure.

DGSGraphQLSpring Boot
0 likes · 10 min read
How Netflix’s Open‑Source DGS Framework Simplifies Java GraphQL Development
Selected Java Interview Questions
Selected Java Interview Questions
Feb 26, 2021 · Backend Development

Understanding IoC: Inversion of Control, Dependency Injection, and Their Benefits

The article explains the core concept of Inversion of Control (IoC), how a third‑party container manages resources to reduce coupling, illustrates the idea with everyday examples, and clarifies the related terms dependency injection and control inversion, especially in the context of Spring.

Inversion of ControlIoCbackend-development
0 likes · 10 min read
Understanding IoC: Inversion of Control, Dependency Injection, and Their Benefits
iQIYI Technical Product Team
iQIYI Technical Product Team
Feb 26, 2021 · Backend Development

Design and Implementation of a WebSocket Long‑Connection Gateway for iQIYI Services

iQIYI built a Netty‑based WebSocket long‑connection gateway that centralizes session management, uses RocketMQ for cluster‑wide broadcast, provides a simple HTTP push API, scales horizontally to millions of connections, integrates Prometheus/Grafana monitoring, and dramatically cuts development effort for real‑time features such as comments and authentication.

NettyPerformance TestingRocketMQ
0 likes · 15 min read
Design and Implementation of a WebSocket Long‑Connection Gateway for iQIYI Services
21CTO
21CTO
Feb 25, 2021 · Information Security

How to Secure Mobile API Calls with Token and Signature Design

This article explains how to secure mobile app open APIs by enforcing HTTPS, designing request signatures with timestamps and tokens, validating them on the server, and managing token‑UID relationships using Redis, complete with Java code examples for parameter extraction and signature generation.

API SecurityHTTPSbackend-development
0 likes · 7 min read
How to Secure Mobile API Calls with Token and Signature Design
Top Architect
Top Architect
Feb 25, 2021 · Backend Development

Understanding Nginx: History, Architecture, Proxy Types, and Load‑Balancing

This article explains the origins of Nginx, compares it with Apache, describes why Nginx gained popularity, details forward and reverse proxy concepts, and outlines the various load‑balancing algorithms it supports, providing a comprehensive overview for backend developers and operations engineers.

NginxProxyWeb server
0 likes · 12 min read
Understanding Nginx: History, Architecture, Proxy Types, and Load‑Balancing
Programmer DD
Programmer DD
Feb 25, 2021 · Backend Development

Master Spring Boot Unit Testing with MockMvc: A Complete Guide

This article explains the fundamentals of unit testing in Spring Boot, covering the purpose of unit tests, how to add the spring-boot-starter-test dependency, the role of MockMvc for controller testing, step‑by‑step creation of Service and Controller test classes, key annotations, assertion techniques, and a brief comparison with Postman.

JUnitMockMvcSpring Boot
0 likes · 13 min read
Master Spring Boot Unit Testing with MockMvc: A Complete Guide