Tagged articles
52 articles
Page 1 of 1
mikechen
mikechen
Apr 23, 2026 · Backend Development

How Nginx Handles One Million Concurrent Connections: 4 Key Techniques

The article explains how Nginx sustains one million simultaneous connections by using asynchronous non‑blocking I/O, a robust multi‑process architecture, zero‑copy file transmission, and optimized caching strategies, with concrete configuration examples and performance reasoning.

NGINXZero Copyasynchronous I/O
0 likes · 4 min read
How Nginx Handles One Million Concurrent Connections: 4 Key Techniques
Deepin Linux
Deepin Linux
Apr 7, 2026 · Fundamentals

Why io_uring Is the Game‑Changer for Linux Asynchronous I/O (And How to Master It)

This article provides a comprehensive, step‑by‑step analysis of Linux's io_uring, covering its architecture, design principles, workflow, performance advantages over traditional models like epoll, practical C code examples, optimization techniques, real‑world use cases, and the challenges developers may face when adopting it.

CKernelLinux
0 likes · 52 min read
Why io_uring Is the Game‑Changer for Linux Asynchronous I/O (And How to Master It)
Deepin Linux
Deepin Linux
Jan 24, 2026 · Fundamentals

Unlocking Linux Performance: A Deep Dive into io_uring and Its Advantages

This comprehensive guide explains why traditional I/O models become bottlenecks in high‑performance computing, introduces the modern io_uring framework with its submission and completion queues, walks through its design goals, core concepts, workflow, performance comparisons, optimization tips, real‑world use cases, and provides complete C examples for practical adoption.

C programmingLinuxPerformance Optimization
0 likes · 48 min read
Unlocking Linux Performance: A Deep Dive into io_uring and Its Advantages
Linux Tech Enthusiast
Linux Tech Enthusiast
Jan 12, 2026 · Fundamentals

Why Zero‑Copy Is Critical for High‑Performance I/O on Linux

The article explains how Direct Memory Access (DMA) eliminates CPU‑bound data copies, compares traditional I/O with zero‑copy techniques such as mmap and sendfile, and shows how reducing system calls and context switches can double file‑transfer throughput while highlighting the limits of kernel cache for large files.

DMALinux I/OZero Copy
0 likes · 15 min read
Why Zero‑Copy Is Critical for High‑Performance I/O on Linux
Deepin Linux
Deepin Linux
Oct 15, 2025 · Fundamentals

Unlock Ultra‑Fast Linux I/O: How io_uring Revolutionizes Asynchronous Operations

This article explores the evolution of Linux I/O models—from blocking and non‑blocking to epoll—and introduces io_uring as a high‑performance asynchronous framework that reduces system‑call overhead, eliminates data copies, and unifies network and disk I/O for modern high‑concurrency applications.

Linux kernelZero Copyasynchronous I/O
0 likes · 51 min read
Unlock Ultra‑Fast Linux I/O: How io_uring Revolutionizes Asynchronous Operations
Deepin Linux
Deepin Linux
Jun 26, 2025 · Backend Development

Why io_uring Beats epoll: Unlocking Ultra‑Fast Asynchronous I/O on Linux

This article traces the evolution of Linux I/O from blocking and non‑blocking models through epoll to the modern io_uring framework, explains its design goals, core concepts, system‑call workflow, and provides practical code examples and performance comparisons for high‑concurrency network and storage applications.

Linux I/OPerformance OptimizationSystem Programming
0 likes · 57 min read
Why io_uring Beats epoll: Unlocking Ultra‑Fast Asynchronous I/O on Linux
Deepin Linux
Deepin Linux
Jun 21, 2025 · Backend Development

Unlocking High-Concurrency in C/C++: A Deep Dive into Coroutines and Their Implementation

This comprehensive guide explores how coroutines provide a lightweight, lock‑free alternative to traditional threads for high‑concurrency C/C++ server programming, covering their fundamentals, differences from threads, implementation techniques, context switching, scheduler design, epoll integration, timer management, and performance testing.

C++Schedulerasynchronous I/O
0 likes · 57 min read
Unlocking High-Concurrency in C/C++: A Deep Dive into Coroutines and Their Implementation
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jun 12, 2025 · Backend Development

How Nginx Handles Millions of Concurrent Connections: Inside Its Master‑Worker and Event‑Driven Architecture

This article explains Nginx's core Master‑Worker process model, high‑performance event‑driven design, I/O multiplexing with epoll, and asynchronous non‑blocking I/O, showing how these techniques enable the server to sustain millions of simultaneous connections.

BackendEvent-drivenIO Multiplexing
0 likes · 5 min read
How Nginx Handles Millions of Concurrent Connections: Inside Its Master‑Worker and Event‑Driven Architecture
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jun 5, 2025 · Backend Development

Mastering the C10K Challenge: How Nginx Handles 10,000 Concurrent Connections

This article explains the C10K problem—how a single server can manage ten thousand simultaneous connections—and outlines four essential techniques (I/O multiplexing, asynchronous non‑blocking I/O, lightweight threading models, and network stack optimization) that enable Nginx and similar servers to achieve high concurrency efficiently.

Backend PerformanceC10KI/O Multiplexing
0 likes · 4 min read
Mastering the C10K Challenge: How Nginx Handles 10,000 Concurrent Connections
Deepin Linux
Deepin Linux
Apr 20, 2025 · Backend Development

Understanding IOCP: Windows Asynchronous I/O Completion Port

This article explains the IOCP (I/O Completion Port) mechanism in Windows, covering its principles, advantages, core components, workflow, practical usage steps with code examples, comparisons to other asynchronous models, and common pitfalls such as thread synchronization, memory management, error handling, and load balancing.

IOCPWindowsasynchronous I/O
0 likes · 31 min read
Understanding IOCP: Windows Asynchronous I/O Completion Port
Deepin Linux
Deepin Linux
Mar 22, 2025 · Backend Development

Understanding IO Models: Blocking, Non‑blocking, Multiplexing and Asynchronous

This article explains the fundamental concepts of I/O models—including blocking, non‑blocking, multiplexing and asynchronous approaches—detailing their mechanisms, advantages, drawbacks, code examples in Python, and practical optimization strategies for high‑concurrency backend systems.

IO modelsLinuxMultiplexing
0 likes · 31 min read
Understanding IO Models: Blocking, Non‑blocking, Multiplexing and Asynchronous
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Feb 20, 2025 · Backend Development

How Nginx Handles Millions of Requests: Event‑Driven Model and Performance Tuning

This article explains how Nginx achieves high concurrency through its event‑driven architecture, asynchronous non‑blocking I/O, epoll‑based I/O multiplexing, and practical caching configurations that dramatically reduce memory usage and improve response speed in high‑traffic scenarios.

Event-drivenasynchronous I/Ocaching
0 likes · 5 min read
How Nginx Handles Millions of Requests: Event‑Driven Model and Performance Tuning
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 4, 2024 · Backend Development

How Nginx Achieves Million-Connection Concurrency: Architecture and Optimization Techniques

This article explains how Nginx uses an event‑driven, asynchronous non‑blocking I/O model together with epoll/kqueue and various optimization strategies such as keep‑alive, caching, efficient data structures and load balancing to handle millions of concurrent connections in large‑scale internet architectures.

Event-drivenasynchronous I/Obackend optimization
0 likes · 5 min read
How Nginx Achieves Million-Connection Concurrency: Architecture and Optimization Techniques
MaGe Linux Operations
MaGe Linux Operations
May 3, 2024 · Fundamentals

Understanding User vs Kernel Space and Modern I/O Models in Linux

This article explains the separation of user and kernel space, compares blocking, non‑blocking, multiplexed, signal‑driven, and asynchronous I/O models, and details the select, poll, and epoll mechanisms used to efficiently handle multiple file descriptors in Linux.

I/O MultiplexingKernel SpaceLinux
0 likes · 12 min read
Understanding User vs Kernel Space and Modern I/O Models in Linux
Open Source Linux
Open Source Linux
Aug 4, 2023 · Backend Development

Boost File Transfer Speed: Zero‑Copy, PageCache, Async & Direct I/O Explained

This article examines traditional file transfer methods, highlights their performance drawbacks caused by excessive context switches and memory copies, and explains how zero‑copy, PageCache, asynchronous I/O, and direct I/O can dramatically improve throughput and reduce CPU usage in backend systems.

Backend DevelopmentDirect I/OPerformance Optimization
0 likes · 12 min read
Boost File Transfer Speed: Zero‑Copy, PageCache, Async & Direct I/O Explained
JD Retail Technology
JD Retail Technology
Apr 28, 2023 · Backend Development

Node.js: Advantages, Disadvantages, Architecture, and Future Trends

This article examines Node.js’s strengths and weaknesses, its event‑driven architecture, practical code examples, middleware usage, impact on front‑end development, and forecasts its role in future trends such as cloud‑native, serverless, IoT, and AI applications.

Backend DevelopmentEvent-drivenNode.js
0 likes · 15 min read
Node.js: Advantages, Disadvantages, Architecture, and Future Trends
Baidu Geek Talk
Baidu Geek Talk
Dec 21, 2022 · Backend Development

Understanding Node.js: Architecture, Event Loop, and Asynchronous I/O

Node.js is a server‑side JavaScript runtime built on V8 that replaces the browser environment with native libraries, uses libuv’s event loop and thread pool to provide non‑blocking asynchronous I/O, and organizes its architecture into application code, V8, bindings, and libuv layers for efficient backend development.

Backend DevelopmentJavaScriptNode.js
0 likes · 16 min read
Understanding Node.js: Architecture, Event Loop, and Asynchronous I/O
IT Services Circle
IT Services Circle
May 31, 2022 · Fundamentals

Understanding Coroutines, Event Loops, and Asynchronous I/O

This article explains why simple serial file reads are slow, compares multithreaded and event‑loop based approaches, introduces the Reactor pattern and callbacks, and finally shows how coroutines provide a synchronous‑style solution for efficient, non‑blocking I/O processing.

CoroutinesReactor Patternasynchronous I/O
0 likes · 12 min read
Understanding Coroutines, Event Loops, and Asynchronous I/O
Beike Product & Technology
Beike Product & Technology
Jul 1, 2021 · Backend Development

Understanding Node.js Asynchronous I/O Model and Its Impact on High‑Concurrency Performance

The article analyses a real‑world Node.js service outage caused by sudden 504 timeouts, explains how the asynchronous I/O model creates time‑slice contention under high QPS, presents load‑testing code and results for both I/O‑ and CPU‑bound requests, and offers practical mitigation strategies such as clustering, caching and resource scaling.

BackendCPU BottleneckLoad Testing
0 likes · 20 min read
Understanding Node.js Asynchronous I/O Model and Its Impact on High‑Concurrency Performance
Weekly Large Model Application
Weekly Large Model Application
Jun 16, 2021 · Fundamentals

Understanding libuv’s Design: A Deep Dive into Its Event Loop and Cross‑Platform Architecture

libuv is a cross‑platform asynchronous I/O library originally built for Node.js that abstracts event‑driven I/O via handles and requests, provides a single‑threaded event loop with platform‑specific poll mechanisms, and uses a global thread pool for file and DNS operations, all while maintaining a consistent execution model.

Node.jsasynchronous I/Ocross-platform
0 likes · 9 min read
Understanding libuv’s Design: A Deep Dive into Its Event Loop and Cross‑Platform Architecture
Tencent IMWeb Frontend Team
Tencent IMWeb Frontend Team
May 31, 2021 · Backend Development

How libtask Implements Coroutines for High‑Performance Servers in C

libtask, a lightweight coroutine library written by Russ Cox, demonstrates how to build a cooperative multitasking scheduler in C, detailing task creation, context switching, epoll‑based I/O handling, and a non‑preemptive FIFO scheduling model that enables asynchronous I/O to appear synchronous for server development.

Casynchronous I/Ocoroutine
0 likes · 19 min read
How libtask Implements Coroutines for High‑Performance Servers in C
Top Architect
Top Architect
Apr 19, 2021 · Backend Development

Thread Models and Reactor/Proactor Patterns in Server Architecture

This article explains server thread models—including traditional blocking I/O, the Reactor pattern with its single‑thread, multi‑thread, and master‑slave variants, and the asynchronous Proactor model—detailing their mechanisms, advantages, disadvantages, and typical use cases in backend development.

Network programmingReactor PatternThread Model
0 likes · 12 min read
Thread Models and Reactor/Proactor Patterns in Server Architecture
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Mar 31, 2021 · Backend Development

Unveiling libuv’s Linux Event Loop: epoll, Thread Pools, and Timers Explained

This article provides a deep technical walkthrough of libuv’s Linux implementation, covering epoll‑based I/O handling, level‑ and edge‑triggered events, the event‑loop architecture, timer management with a min‑heap, thread‑pool integration, and the mechanisms that drive asynchronous callbacks in Node.js.

LinuxSystems ProgrammingTimers
0 likes · 34 min read
Unveiling libuv’s Linux Event Loop: epoll, Thread Pools, and Timers Explained
Code Ape Tech Column
Code Ape Tech Column
Mar 3, 2021 · Fundamentals

What Are the Different I/O Models and When Should You Use Them?

This article explains the four main I/O models—blocking, non‑blocking, multiplexing (reactor), and asynchronous (proactor)—detailing their characteristics, typical implementations in Java and Linux, and when each model is appropriate for building efficient network applications.

I/O MultiplexingIO modelsNon-blocking I/O
0 likes · 3 min read
What Are the Different I/O Models and When Should You Use Them?
Architect
Architect
Feb 12, 2021 · Backend Development

Understanding Nginx Architecture: Daemon Processes, Workers, Connections, and Core Data Structures

This article explains Nginx's high‑performance architecture, covering its daemon mode with master and worker processes, the thundering‑herd problem, advantages of process‑based concurrency, asynchronous non‑blocking I/O, connection handling, keep‑alive and pipeline techniques, as well as key internal data structures such as arrays, queues, lists, strings, memory pools, hash tables, and red‑black trees.

Backend DevelopmentConnection PoolingData Structures
0 likes · 18 min read
Understanding Nginx Architecture: Daemon Processes, Workers, Connections, and Core Data Structures
NetEase Cloud Music Tech Team
NetEase Cloud Music Tech Team
Oct 19, 2020 · Frontend Development

Understanding JavaScript Concurrency, Asynchronous I/O, and the Event Loop

The article explains that JavaScript’s single‑threaded language model relies on the engine and runtime to provide asynchronous I/O and an event loop for concurrency, while multi‑core utilization is achieved through workers, child processes, or clusters, and synchronous APIs remain useful for short, predictable tasks.

JavaScriptNode.jsasynchronous I/O
0 likes · 13 min read
Understanding JavaScript Concurrency, Asynchronous I/O, and the Event Loop
High Availability Architecture
High Availability Architecture
Sep 11, 2020 · Backend Development

Design Principles and Practical Implementation of Network Coroutines in iQIYI's libfiber

This article explains the design concepts, programming practices, performance optimizations, and real‑world applications of iQIYI's open‑source network coroutine library libfiber, covering non‑blocking I/O, coroutine scheduling, event‑engine design, synchronization mechanisms, and its use in high‑performance CDN and DNS services.

asynchronous I/Oevent-driven programminghigh concurrency
0 likes · 25 min read
Design Principles and Practical Implementation of Network Coroutines in iQIYI's libfiber
Java Captain
Java Captain
Aug 18, 2020 · Backend Development

Understanding the Five I/O Models: Blocking, Non‑Blocking, I/O Multiplexing, Signal‑Driven, and Asynchronous I/O

This article explains the five I/O models—blocking, non‑blocking, I/O multiplexing, signal‑driven, and asynchronous—detailing their operation, typical applications, advantages, and drawbacks within the Linux/UNIX networking environment, and compares synchronous versus asynchronous I/O concepts.

I/O ModelsI/O MultiplexingLinux
0 likes · 11 min read
Understanding the Five I/O Models: Blocking, Non‑Blocking, I/O Multiplexing, Signal‑Driven, and Asynchronous I/O
Xueersi Online School Tech Team
Xueersi Online School Tech Team
Jun 12, 2020 · Backend Development

Understanding Swoole Coroutines and Asynchronous I/O in PHP

This article explains the fundamentals of Swoole coroutines, how they differ from threads and processes, the relationship between coroutines and asynchronous I/O, and provides practical code examples for timers, tasks, and concurrent DNS queries to help PHP developers write efficient, non‑blocking backend applications.

PHPSwooleasynchronous I/O
0 likes · 14 min read
Understanding Swoole Coroutines and Asynchronous I/O in PHP
Xiaokun's Architecture Exploration Notes
Xiaokun's Architecture Exploration Notes
Mar 4, 2020 · Fundamentals

Understanding the 5 Core I/O Models: From Blocking to Asynchronous

This article explains the evolution of Unix network I/O models, detailing data transmission paths, blocking and non‑blocking operations, and comparing five models—blocking, non‑blocking, I/O multiplexing, signal‑driven, and asynchronous—while clarifying key terminology such as user space, kernel, and file descriptors.

I/O ModelsUnixasynchronous I/O
0 likes · 15 min read
Understanding the 5 Core I/O Models: From Blocking to Asynchronous
Java Captain
Java Captain
Apr 2, 2018 · Fundamentals

Understanding Java I/O: Streams, Decorator Pattern, NIO.2, and Asynchronous I/O

This article provides a comprehensive guide to Java I/O, explaining the distinction between byte and character streams, the role of abstract and concrete stream classes, how the Decorator pattern extends functionality, the enhancements introduced in NIO.2, and the use of asynchronous I/O with Futures and Callbacks.

Decorator PatternI/OJava
0 likes · 28 min read
Understanding Java I/O: Streams, Decorator Pattern, NIO.2, and Asynchronous I/O
MaGe Linux Operations
MaGe Linux Operations
Feb 27, 2018 · Backend Development

Building a High‑Performance HTTP Keep‑Alive Benchmark with Python asyncio

This article explains the concept of asynchronous I/O, introduces Python’s provisional asyncio module, and walks through a complete example that creates an HTTP keep‑alive benchmark tool, including code, test environment, performance results, and key asyncio concepts such as event loops, futures, coroutines, and generators.

BenchmarkHTTPPython
0 likes · 10 min read
Building a High‑Performance HTTP Keep‑Alive Benchmark with Python asyncio
Architects Research Society
Architects Research Society
Nov 23, 2016 · Databases

ScyllaDB Architecture and Performance Optimizations: Design Insights

ScyllaDB, a Cassandra‑compatible NoSQL database, achieves over tenfold performance improvements through a thread‑per‑core design, asynchronous I/O, custom caching, self‑tuning schedulers, a user‑space TCP/IP stack, and LLVM‑JIT query execution, making it a compelling study for high‑performance database engineering.

Cache DesignDatabase PerformanceNoSQL
0 likes · 5 min read
ScyllaDB Architecture and Performance Optimizations: Design Insights
Qunar Tech Salon
Qunar Tech Salon
Aug 24, 2016 · Backend Development

Design and Evolution of Qunar Order Center: From 1.0 to 3.0

This article presents a comprehensive technical case study of Qunar's Order Center, describing its initial architecture, the challenges faced with scaling and reliability, and the successive redesigns in versions 2.0 and 3.0 that introduced Elasticsearch, asynchronous I/O, micro‑service decomposition, rate‑limiting, and a configurable adapter layer to support massive, multi‑line order processing.

Backend ArchitectureElasticsearchJSON Diff
0 likes · 9 min read
Design and Evolution of Qunar Order Center: From 1.0 to 3.0
Node Underground
Node Underground
Jan 28, 2016 · Backend Development

Mastering Node.js Streams: From Basics to Real-World Applications

This article explains the concept of streams in Unix and Node.js, describes the four stream types, shows how to create and control readable streams with code examples, and demonstrates practical uses such as file serving, piping, and building an HTTP proxy.

Node.jsPipeasynchronous I/O
0 likes · 9 min read
Mastering Node.js Streams: From Basics to Real-World Applications
MaGe Linux Operations
MaGe Linux Operations
Dec 12, 2014 · Operations

How to Slash Linux Disk Fragmentation and Boost I/O Performance by Up to 5×

This article explains practical techniques for reducing Linux file fragmentation and dramatically improving I/O throughput—ranging from kernel cache tuning and minimum allocation tweaks to asynchronous I/O, read‑ahead, delayed allocation, and even building a custom filesystem that can deliver three to five times faster disk performance.

Filesystem CacheI/O optimizationLinux
0 likes · 7 min read
How to Slash Linux Disk Fragmentation and Boost I/O Performance by Up to 5×