Tagged articles
132 articles
Page 1 of 2
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
Nov 27, 2025 · Backend Development

How epoll Scales to Millions of Connections Using Red‑Black Trees and Ready Lists

This article explains the inner workings of Linux's epoll mechanism, detailing how red‑black trees manage registered file descriptors and how a ready‑list delivers events in O(1) time, covering core APIs, data structures, insertion‑deletion logic, and the full kernel‑space to user‑space flow.

Event-drivenLinuxNetwork programming
0 likes · 54 min read
How epoll Scales to Millions of Connections Using Red‑Black Trees and Ready Lists
Architect Chen
Architect Chen
Nov 6, 2025 · Backend Development

Boost Nginx Performance 10×: Auto CPU Affinity, Epoll, and Zero‑Copy Tweaks

This guide explains how to unleash Nginx's full potential on multi‑core Linux servers by configuring automatic CPU affinity, increasing worker connections with epoll, raising system file limits, and enabling zero‑copy transmission, resulting in up to ten‑fold throughput gains and dramatically lower CPU usage.

epolloptimizationzero-copy
0 likes · 4 min read
Boost Nginx Performance 10×: Auto CPU Affinity, Epoll, and Zero‑Copy Tweaks
Open Source Tech Hub
Open Source Tech Hub
Nov 4, 2025 · Fundamentals

Why epoll Beats select/poll: Inside Linux’s High‑Performance I/O Engine

This article explains how Linux’s epoll mechanism, built on libevent and using red‑black trees and ready‑list queues, provides scalable I/O multiplexing for sockets, eventfd and timerfd while traditional file systems like ext4 cannot be managed directly, and outlines the key efficiency tricks behind its design.

I/O MultiplexingLinuxSocket
0 likes · 8 min read
Why epoll Beats select/poll: Inside Linux’s High‑Performance I/O Engine
Deepin Linux
Deepin Linux
Sep 12, 2025 · Backend Development

Mastering Linux I/O Multiplexing: select, poll, and epoll Explained with Real Code

This article explains the concepts, advantages, limitations, and practical usage of Linux I/O multiplexing mechanisms—select, poll, and epoll—through analogies, detailed explanations, code examples, and common interview questions, helping developers choose the right tool for high‑concurrency network programming.

Event-drivenIO MultiplexingLinux
0 likes · 35 min read
Mastering Linux I/O Multiplexing: select, poll, and epoll Explained with Real Code
Cognitive Technology Team
Cognitive Technology Team
Aug 25, 2025 · Backend Development

Why epoll Uses Red-Black Trees for High-Performance Linux Networking

epoll, Linux’s high-performance I/O multiplexing mechanism, outperforms select and poll by leveraging a red-black tree to manage file descriptors, offering O(log n) registration, O(1) event retrieval, and scalable handling of millions of connections, with detailed explanations of its architecture, workflow, and performance advantages.

I/O MultiplexingLinuxRed-Black Tree
0 likes · 10 min read
Why epoll Uses Red-Black Trees for High-Performance Linux Networking
Open Source Tech Hub
Open Source Tech Hub
Jul 16, 2025 · Backend Development

Why epoll Beats select and poll: A Deep Dive into Linux’s High‑Performance I/O Multiplexing

This article explains the limitations of traditional I/O models such as blocking I/O, non‑blocking I/O, select and poll, introduces epoll’s design, core data structures, operation modes, system‑call interface, and provides practical code examples and optimisation tips for high‑concurrency network servers.

Event-drivenI/O MultiplexingLinux
0 likes · 45 min read
Why epoll Beats select and poll: A Deep Dive into Linux’s High‑Performance I/O Multiplexing
Deepin Linux
Deepin Linux
Jul 15, 2025 · Operations

Why the Thundering Herd Problem Slows Your Linux Server and How to Fix It

The thundering herd problem in Linux causes multiple processes or threads to wake up simultaneously for a single event, leading to wasted CPU cycles, excessive context switches, lock contention, and severe performance degradation, but it can be mitigated with kernel tweaks, epoll flags, SO_REUSEPORT, thread pools, and other strategies.

Linux performanceacceptepoll
0 likes · 45 min read
Why the Thundering Herd Problem Slows Your Linux Server and How to Fix It
Deepin Linux
Deepin Linux
Jul 14, 2025 · Backend Development

Unlocking Epoll: A Deep Dive into Linux’s High‑Performance I/O Mechanism

This article explores Linux’s epoll interface in depth, covering its core architecture, LT and ET trigger modes, underlying red‑black tree and linked‑list data structures, callback workflow, practical code examples, and best‑practice guidelines for high‑concurrency network applications.

ETI/O MultiplexingLT
0 likes · 33 min read
Unlocking Epoll: A Deep Dive into Linux’s High‑Performance I/O Mechanism
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
May 15, 2025 · Operations

Nginx High-Concurrency Optimization Techniques

This article explains how to achieve million‑level concurrent connections with Nginx by tuning OS limits, worker processes, epoll event handling, gzip compression, and zero‑copy file transfer, providing concrete configuration snippets and performance rationale for each optimization.

GzipLinuxepoll
0 likes · 4 min read
Nginx High-Concurrency Optimization Techniques
Deepin Linux
Deepin Linux
Apr 25, 2025 · Backend Development

Understanding epoll: Linux I/O Multiplexing, Design, and Practical Usage

This article explains the limitations of traditional I/O models, introduces epoll as a high‑performance Linux I/O multiplexing mechanism, details its design principles, API usage, kernel data structures, and provides practical coding examples and optimization tips for building scalable backend services.

Event-drivenI/O MultiplexingNetwork programming
0 likes · 41 min read
Understanding epoll: Linux I/O Multiplexing, Design, and Practical Usage
Tencent Technical Engineering
Tencent Technical Engineering
Apr 18, 2025 · Fundamentals

I/O Multiplexing in Linux: Detailed Explanation of select, poll, and epoll

Linux treats all I/O devices as files, enabling a single thread to monitor many descriptors via I/O multiplexing; while select and poll use linear scans and suffer size limits, epoll employs an event‑driven red‑black tree with edge‑triggered mode, offering scalable, high‑performance handling for thousands of concurrent connections.

I/O MultiplexingLinuxSystem Programming
0 likes · 30 min read
I/O Multiplexing in Linux: Detailed Explanation of select, poll, and epoll
Deepin Linux
Deepin Linux
Apr 18, 2025 · Backend Development

Deep Dive into Linux epoll: Design, Implementation, and Performance

epoll is a high‑performance Linux I/O multiplexing mechanism that replaces select/poll by using an event‑driven design with a red‑black tree and ready list, supporting edge‑ and level‑triggered modes, efficient data transfer via mmap, and providing superior scalability for high‑concurrency network applications.

Event-drivenI/O MultiplexingNetwork programming
0 likes · 85 min read
Deep Dive into Linux epoll: Design, Implementation, and Performance
Cognitive Technology Team
Cognitive Technology Team
Mar 24, 2025 · Fundamentals

Understanding Sockets and epoll: Kernel Abstractions and High‑Concurrency Design

Socket provides a file‑descriptor based network communication abstraction in the OS, while epoll uses a red‑black‑tree and ready‑queue mechanism to deliver O(log N) scalable I/O event handling, together forming the core design that enables high‑concurrency servers to efficiently manage thousands of connections.

IO MultiplexingNetwork programmingSocket
0 likes · 7 min read
Understanding Sockets and epoll: Kernel Abstractions and High‑Concurrency Design
Java One
Java One
Mar 9, 2025 · Backend Development

What’s Behind Java’s I/O: From BIO to Epoll and Beyond

This article explains the fundamentals of I/O in Unix and Java, covering the distinction between user and kernel space, the five Unix I/O models, the evolution from select/poll to epoll/kqueue, and how modern network frameworks like Reactor and Proactor leverage these mechanisms for high‑performance networking.

JavaNetworkingepoll
0 likes · 16 min read
What’s Behind Java’s I/O: From BIO to Epoll and Beyond
Deepin Linux
Deepin Linux
Feb 6, 2025 · Backend Development

A Comprehensive Guide to epoll in Linux: Principles, Design, and Practical Usage

This article explains how epoll improves Linux I/O multiplexing by using red‑black trees and ready lists, compares level‑triggered and edge‑triggered modes, details the epoll_create/epoll_ctl/epoll_wait system calls, discusses common pitfalls, and provides a complete TCP server example for handling many concurrent connections.

I/O MultiplexingLinuxedge-triggered
0 likes · 72 min read
A Comprehensive Guide to epoll in Linux: Principles, Design, and Practical Usage
Deepin Linux
Deepin Linux
Jan 9, 2025 · Backend Development

Deep Dive into Network I/O: Principles, Socket Types, and epoll Multiplexing

This article explains the fundamentals of network I/O, covering hardware basics, process scheduling, blocking and non‑blocking models, multiplexed I/O techniques such as select/poll/epoll, asynchronous I/O, socket types, and the user‑kernel boundary, providing a comprehensive guide for backend developers.

Backend DevelopmentLinuxNetwork I/O
0 likes · 39 min read
Deep Dive into Network I/O: Principles, Socket Types, and epoll Multiplexing
JD Tech Talk
JD Tech Talk
Jan 6, 2025 · Fundamentals

Understanding IO Models: Blocking, Non‑Blocking, Multiplexing, Signal‑Driven and Asynchronous IO

This article explains the fundamentals of input/output (IO) in operating systems, covering the basic IO concept, the role of the OS, the two‑phase IO call process, and detailed descriptions of blocking, non‑blocking, multiplexed (select, poll, epoll), signal‑driven and asynchronous IO models with example code.

Blocking IOMultiplexingNon-blocking IO
0 likes · 13 min read
Understanding IO Models: Blocking, Non‑Blocking, Multiplexing, Signal‑Driven and Asynchronous IO
JD Cloud Developers
JD Cloud Developers
Jan 6, 2025 · Fundamentals

Understanding IO Models: From Blocking to Epoll and Asynchronous I/O

This article explains the fundamentals of input/output (IO) in operating systems, covering the basic IO concept, the role of the OS, the two-stage IO process, and various IO models such as blocking, non‑blocking, select/poll/epoll, signal‑driven and asynchronous approaches.

Non-blocking I/OOperating Systemsblocking I/O
0 likes · 13 min read
Understanding IO Models: From Blocking to Epoll and Asynchronous I/O
Liangxu Linux
Liangxu Linux
Dec 29, 2024 · Backend Development

Master epoll: Boost Linux Server Performance with Event‑Driven I/O

This article explains how epoll works as Linux's high‑performance I/O multiplexer, compares it with select and poll, details its three‑step workflow, data structures, code examples, and the trade‑offs between level‑triggered and edge‑triggered modes for building scalable network servers.

ETEvent-drivenI/O Multiplexing
0 likes · 22 min read
Master epoll: Boost Linux Server Performance with Event‑Driven I/O
Deepin Linux
Deepin Linux
Dec 29, 2024 · Backend Development

Understanding epoll: High‑Performance I/O Multiplexing in Linux

This article explains the principles, advantages, and implementation details of Linux's epoll I/O multiplexing mechanism, compares it with select and poll, describes its level‑ and edge‑triggered modes, and provides practical C and Python examples for building high‑concurrency network servers.

I/O MultiplexingLinuxedge-triggered
0 likes · 61 min read
Understanding epoll: High‑Performance I/O Multiplexing in Linux
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
Code Ape Tech Column
Code Ape Tech Column
Dec 4, 2024 · Backend Development

Deep Dive into Netty’s Asynchronous Model, Epoll, IO Multiplexing, and JNI with Hands‑On C Code

This article explains Netty’s asynchronous architecture, compares classic multithread, Reactor, select, poll and epoll models, clarifies level‑triggered versus edge‑triggered event handling, and provides step‑by‑step JNI and hand‑written epoll server examples in C to illustrate high‑performance backend development.

CIO MultiplexingJNI
0 likes · 33 min read
Deep Dive into Netty’s Asynchronous Model, Epoll, IO Multiplexing, and JNI with Hands‑On C Code
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 11, 2024 · Databases

Is Redis Single‑Threaded? Uncover Its Core Architecture and Multi‑Threading Features

Redis primarily operates with a single thread using I/O multiplexing (select, poll, epoll) to handle massive concurrent connections, while newer versions introduce optional multi‑threaded networking and use child processes for persistence, maintaining its core single‑threaded design for data processing.

Database ArchitectureI/O MultiplexingSingle‑threaded
0 likes · 5 min read
Is Redis Single‑Threaded? Uncover Its Core Architecture and Multi‑Threading Features
Deepin Linux
Deepin Linux
Sep 9, 2024 · Backend Development

Understanding epoll: Level‑Triggered vs Edge‑Triggered Modes and Kernel Implementation

This article explains the concepts of level‑triggered (LT) and edge‑triggered (ET) event notification in Linux epoll, describes epoll's core data structures such as the red‑black tree and ready‑list, details the three main APIs (epoll_create, epoll_ctl, epoll_wait), and examines the locking and internal kernel mechanisms that enable efficient I/O multiplexing.

Event-drivenI/O MultiplexingLinux kernel
0 likes · 69 min read
Understanding epoll: Level‑Triggered vs Edge‑Triggered Modes and Kernel Implementation
Liangxu Linux
Liangxu Linux
Aug 18, 2024 · Backend Development

Why Does the Thundering Herd Problem Still Appear with epoll? Deep Dive and Fixes

This article explains the thundering herd phenomenon in multi‑process/thread servers, details its performance costs, demonstrates the issue with accept() and epoll_wait() through C examples, explores thread‑level herd, and presents mitigation techniques such as accept mutexes, SO_REUSEPORT, and Nginx's handling.

Linux kernelSO_REUSEPORTaccept
0 likes · 20 min read
Why Does the Thundering Herd Problem Still Appear with epoll? Deep Dive and Fixes
Open Source Linux
Open Source Linux
Jun 18, 2024 · Backend Development

Understanding and Solving the Linux Thundering Herd Problem

This article explains the Linux thundering herd phenomenon, its impact on processes, threads, and epoll, demonstrates it with C code examples, analyzes system overhead, and presents mitigation techniques such as accept mutex, SO_REUSEPORT, and proper locking to improve server performance.

LinuxSO_REUSEPORTaccept
0 likes · 19 min read
Understanding and Solving the Linux Thundering Herd Problem
Deepin Linux
Deepin Linux
May 17, 2024 · Fundamentals

Comprehensive Overview of epoll Data Structures and Implementation in Linux

This article systematically explains epoll's core data structures—including a red‑black tree and a doubly linked ready list—its three main APIs, the kernel implementation details, thread‑safety mechanisms, ET vs. LT behavior, and how it improves over select/poll for high‑concurrency network programming.

Event-drivenI/O MultiplexingLinux kernel
0 likes · 68 min read
Comprehensive Overview of epoll Data Structures and Implementation in Linux
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
MaGe Linux Operations
MaGe Linux Operations
Apr 11, 2024 · Databases

Why Is Redis So Fast? Uncover the Secrets Behind Its Performance

This article explains why Redis achieves exceptional speed by leveraging in‑memory storage, an efficient hash‑table data structure, a single‑threaded event loop, epoll I/O multiplexing, incremental rehashing, and cached timestamps, providing a comprehensive view of its performance optimizations.

In-Memory DatabaseIncremental RehashSingle Thread
0 likes · 7 min read
Why Is Redis So Fast? Uncover the Secrets Behind Its Performance
Code Ape Tech Column
Code Ape Tech Column
Feb 17, 2024 · Backend Development

Understanding Netty’s Asynchronous Model, Epoll, and IO Multiplexing: Theory, JNI Integration, and a Hand‑Written Epoll Server

This article explains Netty’s reactor‑based asynchronous architecture, compares classic multithread, select, poll and epoll I/O multiplexing models, demonstrates Java‑C interaction via JNI, and provides a complete hand‑written epoll server implementation with detailed code and performance insights.

CIO MultiplexingJNI
0 likes · 36 min read
Understanding Netty’s Asynchronous Model, Epoll, and IO Multiplexing: Theory, JNI Integration, and a Hand‑Written Epoll Server
360 Smart Cloud
360 Smart Cloud
Dec 7, 2023 · Fundamentals

Understanding Asynchronous and Event Mechanisms in Frontend and Backend Development

This article explains how asynchronous programming and event‑driven mechanisms work in both frontend JavaScript and backend Golang, covering the JavaScript event loop, macro‑ and micro‑tasks, goroutine‑based concurrency, and the kernel‑level epoll architecture that together enable efficient, non‑blocking execution.

AsynchronousBackendGolang
0 likes · 17 min read
Understanding Asynchronous and Event Mechanisms in Frontend and Backend Development
Liangxu Linux
Liangxu Linux
Dec 6, 2023 · Fundamentals

Mastering Files, File Descriptors, and I/O Multiplexing in Linux

This article explains Linux file concepts, how file descriptors work, why simple blocking I/O fails at scale, and introduces I/O multiplexing techniques—including select, poll, and epoll—detailing their mechanisms, limitations, and practical code examples for high‑concurrency servers.

I/O Multiplexingepollfile-descriptors
0 likes · 13 min read
Mastering Files, File Descriptors, and I/O Multiplexing in Linux
dbaplus Community
dbaplus Community
Nov 29, 2023 · Backend Development

How Redis Achieves High‑Performance Networking with a Single‑Threaded Event Loop

This article explains how Redis uses Linux epoll and a single‑threaded event loop to handle millions of connections efficiently, covering the creation of the epoll object, server initialization, event registration, the main processing loop, and the mechanisms for reading, writing, and managing pending tasks.

Backend DevelopmentNetwork programmingSingle Thread
0 likes · 23 min read
How Redis Achieves High‑Performance Networking with a Single‑Threaded Event Loop
Deepin Linux
Deepin Linux
Nov 17, 2023 · Backend Development

Understanding Coroutines: Principles, Implementations, and Performance in C/C++

This article explains the concept of coroutines as lightweight user‑level threads, compares them with traditional threads, details various implementation mechanisms in C/C++ (including libco and NtyCo), and demonstrates how they improve I/O‑bound server performance through examples and code snippets.

C++NtyCocoroutine
0 likes · 45 min read
Understanding Coroutines: Principles, Implementations, and Performance in C/C++
Open Source Tech Hub
Open Source Tech Hub
Nov 13, 2023 · Backend Development

Mastering Socket Programming: From Basics to Epoll and Reactor Patterns

This article explains the fundamentals of socket programming, detailing server and client setup steps, the TCP three‑way handshake, criteria for readable and writable sockets, and advanced techniques such as multi‑process models, I/O multiplexing, the Reactor pattern, and Epoll’s role in efficient event‑driven networking.

I/O MultiplexingReactor Patternepoll
0 likes · 9 min read
Mastering Socket Programming: From Basics to Epoll and Reactor Patterns
Open Source Linux
Open Source Linux
Oct 27, 2023 · Backend Development

Why epoll Beats select: A Deep Dive into Linux I/O Multiplexing

This article explains the advantages of epoll over select for I/O multiplexing in Linux, covering its event-driven design, edge-triggered vs level-triggered modes, core APIs, practical code examples, and performance considerations for high‑concurrency network servers.

IO MultiplexingLinux networkingepoll
0 likes · 53 min read
Why epoll Beats select: A Deep Dive into Linux I/O Multiplexing
Liangxu Linux
Liangxu Linux
Oct 21, 2023 · Backend Development

Why Nginx Doesn’t Fall Victim to the Thundering Herd Problem

This article explains the thundering herd phenomenon in multi‑process servers, walks through Nginx’s master‑worker architecture and its use of epoll, and compares three practical mitigation techniques—accept_mutex, EPOLLEXCLUSIVE, and SO_REUSEPORT—complete with code excerpts and configuration examples.

BackendNGINXSO_REUSEPORT
0 likes · 9 min read
Why Nginx Doesn’t Fall Victim to the Thundering Herd Problem
Sanyou's Java Diary
Sanyou's Java Diary
Oct 9, 2023 · Backend Development

Unlocking Java NIO: How Select, Poll, and Epoll Revolutionize I/O Multiplexing

This article explains the evolution of I/O multiplexing in Java, covering the birth of multiplexing, the introduction of NIO with Selector, and detailed comparisons of select, poll, and epoll mechanisms, including their APIs, internal workings, and performance considerations for high‑concurrency network programming.

I/O Multiplexingepollnio
0 likes · 44 min read
Unlocking Java NIO: How Select, Poll, and Epoll Revolutionize I/O Multiplexing
Liangxu Linux
Liangxu Linux
Sep 30, 2023 · Backend Development

How Nginx Tackles the Thundering Herd Problem with epoll and Advanced Locks

This article explains the thundering herd phenomenon in multi‑process servers, examines Nginx’s master‑worker architecture, and details three mitigation techniques—accept_mutex, EPOLLEXCLUSIVE, and SO_REUSEPORT—showing how each leverages epoll and kernel features to reduce unnecessary wake‑ups.

SO_REUSEPORTaccept_mutexepoll
0 likes · 9 min read
How Nginx Tackles the Thundering Herd Problem with epoll and Advanced Locks
AI Cyberspace
AI Cyberspace
Apr 4, 2023 · Fundamentals

Mastering Linux Socket I/O: Blocking, Non‑Blocking, and Epoll Explained

This article explains the two‑stage socket I/O process in Linux, compares blocking, non‑blocking, and I/O multiplexing techniques, details the select, poll, and epoll APIs with their advantages and drawbacks, and provides complete C code examples for a high‑performance TCP server and client.

BlockingCI/O
0 likes · 20 min read
Mastering Linux Socket I/O: Blocking, Non‑Blocking, and Epoll Explained
MaGe Linux Operations
MaGe Linux Operations
Apr 2, 2023 · Fundamentals

Understanding Linux I/O Models: From Blocking to Asynchronous

This article explains the five Linux I/O models—blocking, non‑blocking, I/O multiplexing, signal‑driven, and asynchronous—detailing their system calls, behavior, and performance characteristics while using vivid analogies to illustrate each model’s workflow.

Blocking IOIO modelsNon-blocking IO
0 likes · 10 min read
Understanding Linux I/O Models: From Blocking to Asynchronous
Top Architect
Top Architect
Oct 25, 2022 · Backend Development

Understanding Netty's Asynchronous Model, Linux I/O Multiplexing (select, poll, epoll) and JNI Integration

This article explains Netty's high‑performance asynchronous architecture, compares classic multithread, Reactor, select, poll and epoll I/O multiplexing models, describes level‑triggered versus edge‑triggered event handling, and provides a step‑by‑step JNI example and a hand‑written epoll server implementation in C.

BackendIO MultiplexingJNI
0 likes · 34 min read
Understanding Netty's Asynchronous Model, Linux I/O Multiplexing (select, poll, epoll) and JNI Integration
Architect's Guide
Architect's Guide
Oct 21, 2022 · Backend Development

Understanding Netty's Asynchronous Model and Linux epoll: From the Stone Sword Analogy to High‑Performance IO

This article explains how Netty implements a powerful asynchronous, event‑driven architecture using the Reactor pattern, compares classic multithread, select, poll and epoll I/O multiplexing models, demonstrates JNI integration with Java, and provides a complete, annotated epoll server example with level‑triggered and edge‑triggered handling for high‑concurrency backend development.

AsynchronousBackendIO Multiplexing
0 likes · 32 min read
Understanding Netty's Asynchronous Model and Linux epoll: From the Stone Sword Analogy to High‑Performance IO
Code Ape Tech Column
Code Ape Tech Column
Sep 9, 2022 · Backend Development

Understanding Netty’s Asynchronous Model, Epoll, and IO Multiplexing – From Theory to a Hand‑Written Server

This article explains Netty’s reactor‑based asynchronous architecture, compares classic multithread, select, poll and epoll models, demonstrates JNI integration with C code, and provides a complete hand‑written epoll server example to illustrate high‑performance backend networking in Java.

CIO MultiplexingJNI
0 likes · 34 min read
Understanding Netty’s Asynchronous Model, Epoll, and IO Multiplexing – From Theory to a Hand‑Written Server
IT Architects Alliance
IT Architects Alliance
Aug 30, 2022 · Backend Development

Understanding Netty’s Asynchronous Model, Linux epoll, and JNI: Theory, Code Walkthrough, and Hand‑written Server Implementation

This article explains Netty’s high‑performance asynchronous architecture, the evolution of I/O multiplexing models from select to poll and epoll, demonstrates Java‑C integration via JNI with detailed code examples, and provides a complete hand‑written epoll server in C for achieving million‑connection concurrency.

CIO MultiplexingJNI
0 likes · 32 min read
Understanding Netty’s Asynchronous Model, Linux epoll, and JNI: Theory, Code Walkthrough, and Hand‑written Server Implementation
Top Architect
Top Architect
Aug 30, 2022 · Backend Development

Understanding IO Multiplexing: select, poll, and epoll in Linux with Code Examples

This article provides an in‑depth explanation of Linux I/O multiplexing models—including select, poll, and epoll—detailing their mechanisms, advantages, limitations, and practical C code examples, while also covering edge‑triggered vs level‑triggered behavior and offering a complete epoll server implementation.

IO MultiplexingNetwork programmingedge trigger
0 likes · 26 min read
Understanding IO Multiplexing: select, poll, and epoll in Linux with Code Examples
Architects' Tech Alliance
Architects' Tech Alliance
Jul 14, 2022 · Fundamentals

Understanding Synchronous vs Asynchronous, Blocking vs Non-Blocking, and Linux I/O Models

This article explains the concepts of synchronous and asynchronous execution, blocking and non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various Linux I/O models such as blocking, non‑blocking, multiplexing, signal‑driven and asynchronous I/O, including the differences among select, poll and epoll.

AsynchronousBlockingLinux
0 likes · 14 min read
Understanding Synchronous vs Asynchronous, Blocking vs Non-Blocking, and Linux I/O Models
MaGe Linux Operations
MaGe Linux Operations
Jul 6, 2022 · Backend Development

Mastering epoll: Boost Linux Server Performance with Edge-Triggered I/O

This article explains the epoll interface, its underlying data structures, the three-step usage pattern, the differences between level‑triggered and edge‑triggered modes, the reactor model, and provides a complete C demo, helping developers efficiently handle millions of concurrent TCP connections on Linux.

C programmingI/O MultiplexingLinux
0 likes · 17 min read
Mastering epoll: Boost Linux Server Performance with Edge-Triggered I/O
Liangxu Linux
Liangxu Linux
Jul 3, 2022 · Backend Development

How Nginx Leverages epoll in a Multi‑Process Architecture

This article explains Nginx's network design, showing how the master process only creates and binds listening sockets while worker processes each create an epoll instance, register events, and handle accept, read, and write operations, illustrating the complete flow from code snippets to multi‑process coordination.

Backend DevelopmentNGINXNetwork programming
0 likes · 19 min read
How Nginx Leverages epoll in a Multi‑Process Architecture
Liangxu Linux
Liangxu Linux
Jun 10, 2022 · Operations

How Linux epoll Boosts I/O Performance: Inside the Kernel’s Eventpoll Mechanism

This article explains why traditional select and poll struggle with many file descriptors, how epoll redesigns the workflow by registering descriptors once via epoll_ctl, the kernel data structures (eventpoll, epitem) that manage events, and walks through the core functions epoll_create, epoll_ctl, epoll_wait, and their callbacks.

CI/O MultiplexingKernel
0 likes · 22 min read
How Linux epoll Boosts I/O Performance: Inside the Kernel’s Eventpoll Mechanism
ITPUB
ITPUB
Jun 7, 2022 · Backend Development

How Redis Achieves High Performance with a Single‑Threaded Event Loop

This article explains how Redis uses Linux epoll and a single‑threaded event‑driven architecture to handle tens of thousands of connections efficiently, detailing the initialization of the server, the event‑loop mechanics, and the processing of client commands from accept to reply.

Network programmingSingle‑threadedepoll
0 likes · 22 min read
How Redis Achieves High Performance with a Single‑Threaded Event Loop
Refining Core Development Skills
Refining Core Development Skills
May 24, 2022 · Backend Development

An In-Depth Analysis of Redis Multi-Threaded Architecture and I/O Event Processing

This article provides a comprehensive source-level analysis of Redis 6.0 and later multi-threaded architecture, detailing how the main event loop coordinates with dedicated I/O threads to efficiently distribute, parse, and process concurrent read and write requests while maintaining high throughput and low latency.

C programmingI/O Multiplexingepoll
0 likes · 21 min read
An In-Depth Analysis of Redis Multi-Threaded Architecture and I/O Event Processing
Liangxu Linux
Liangxu Linux
May 17, 2022 · Backend Development

How Nginx Leverages epoll in a Multi‑Process Architecture

This article explains Nginx's network design, detailing how the master process only creates and binds listening sockets while multiple worker processes each create their own epoll instance, register events, and handle client connections through accept, connection initialization, and event‑driven I/O.

NGINXNetwork programmingepoll
0 likes · 18 min read
How Nginx Leverages epoll in a Multi‑Process Architecture
Efficient Ops
Efficient Ops
May 11, 2022 · Backend Development

How epoll Handles Millions of Connections Efficiently: A Deep Dive into Linux I/O Multiplexing

This article explains why traditional select/poll struggle with massive connections, how epoll's event-driven design using a red‑black tree and ready‑list dramatically improves scalability, details its two trigger modes, and provides a complete C demo illustrating a high‑performance reactor model.

BackendEvent-drivenI/O Multiplexing
0 likes · 18 min read
How epoll Handles Millions of Connections Efficiently: A Deep Dive into Linux I/O Multiplexing
IT Services Circle
IT Services Circle
Apr 13, 2022 · Backend Development

Understanding Nginx Multi‑Process Network Architecture and Epoll Usage

This article explains how Nginx separates network responsibilities between its master and worker processes, detailing the creation of listening sockets, the use of epoll for event‑driven I/O, the initialization of modules, and the handling of client connections in a multi‑process environment.

NGINXepollmulti-process
0 likes · 16 min read
Understanding Nginx Multi‑Process Network Architecture and Epoll Usage
Refining Core Development Skills
Refining Core Development Skills
Apr 11, 2022 · Backend Development

How Nginx Uses Epoll in a Multi‑Process Architecture

This article explains Nginx's multi‑process design, detailing how the master process handles socket binding and listening while each worker creates its own epoll instance, registers events, and processes connections through a well‑structured event loop with code examples from the source tree.

BackendLinuxNGINX
0 likes · 18 min read
How Nginx Uses Epoll in a Multi‑Process Architecture
Tencent Cloud Developer
Tencent Cloud Developer
Mar 29, 2022 · Fundamentals

Deep Dive into the Linux epoll Mechanism and Its Kernel Implementation

The article dissects Linux’s epoll I/O multiplexing, tracing the flow from socket creation with accept through epoll_create, epoll_ctl registration, and epoll_wait sleeping, detailing the kernel’s eventpoll object, red‑black tree, per‑socket wait‑queue callbacks that enable O(log N) registration and O(1) event delivery for tens of thousands of connections.

CEvent-drivenIO Multiplexing
0 likes · 24 min read
Deep Dive into the Linux epoll Mechanism and Its Kernel Implementation
Tencent Cloud Developer
Tencent Cloud Developer
Mar 22, 2022 · Backend Development

Source Code Analysis of the netpoll Go High‑Performance Network Framework

The article dissects netpoll, a Go‑based high‑performance network framework that uses a Multi‑Reactor model with a main and sub‑reactors, detailing its server EventLoop, poll manager load‑balancing across epoll/kqueue, connection buffering and request handling, and the client’s non‑blocking dialing process.

GoServerclient
0 likes · 40 min read
Source Code Analysis of the netpoll Go High‑Performance Network Framework
Architect's Journey
Architect's Journey
Mar 16, 2022 · Backend Development

Cracking NIO Interview: An Alibaba P7 Senior Explains IO Multiplexing

In this interview‑style tutorial, an Alibaba P7 engineer walks through the limitations of BIO, the non‑blocking NIO API, kernel‑level select/poll mechanisms, and the design of epoll, illustrating how each solves the C10K problem and how they are used in Java.

BackendIO MultiplexingJava NIO
0 likes · 16 min read
Cracking NIO Interview: An Alibaba P7 Senior Explains IO Multiplexing
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Feb 18, 2022 · Mobile Development

Understanding Android EventHub: Architecture and Event Handling

EventHub acts as the bridge between Linux input devices and Android’s InputReader by monitoring /dev/input with inotify and epoll, detecting device additions, opening and registering new devices, reading raw input_event structures, converting them into RawEvent objects, and handling closures, rescans, and wake‑up signals in a continuous loop.

AndroidEventHubInput System
0 likes · 9 min read
Understanding Android EventHub: Architecture and Event Handling
IT Architects Alliance
IT Architects Alliance
Nov 28, 2021 · Fundamentals

Understanding Synchronization, Blocking, and I/O Models in Linux

This article explains the concepts of synchronous vs. asynchronous execution, blocking vs. non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various Linux I/O models such as select, poll, epoll, signal‑driven and asynchronous I/O.

BlockingIO modelsLinux
0 likes · 15 min read
Understanding Synchronization, Blocking, and I/O Models in Linux
Architects' Tech Alliance
Architects' Tech Alliance
Nov 26, 2021 · Fundamentals

Understanding Synchrony, Blocking, Process Switching, File Descriptors, and I/O Models (select, poll, epoll)

This article explains the differences between synchronous and asynchronous execution, blocking and non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various I/O models—including blocking, non‑blocking, multiplexing, signal‑driven, and asynchronous—while highlighting the characteristics of select, poll, and epoll.

BlockingIO modelsNon-blocking
0 likes · 15 min read
Understanding Synchrony, Blocking, Process Switching, File Descriptors, and I/O Models (select, poll, epoll)
TAL Education Technology
TAL Education Technology
Nov 18, 2021 · Backend Development

Server‑Side Network Concurrency Models and Linux I/O Multiplexing (select, epoll)

This article explains fundamental concepts of streams, I/O operations, blocking and non‑blocking behavior, compares blocking wait with busy polling, and then details five practical solutions—including multithreading, select, and epoll—while presenting Linux epoll API usage, code examples, and a comprehensive overview of seven common server concurrency models.

IO MultiplexingLinuxNetwork Concurrency
0 likes · 32 min read
Server‑Side Network Concurrency Models and Linux I/O Multiplexing (select, epoll)
Liangxu Linux
Liangxu Linux
Sep 5, 2021 · Fundamentals

Understanding Linux timerfd: From Procfs to Epoll Integration

This article explains the structure and operation of Linux timerfd, covering its representation in /proc, the timerfd_create/settime/gettime system calls, internal kernel structures, and how timerfd integrates with epoll for event-driven programming.

LinuxSystem Callepoll
0 likes · 15 min read
Understanding Linux timerfd: From Procfs to Epoll Integration
TAL Education Technology
TAL Education Technology
Aug 5, 2021 · Backend Development

Understanding epoll Programming and Its Use in Redis Server

This article explains the basic network programming pattern, introduces epoll as an I/O multiplexing solution for high‑concurrency servers, and demonstrates how Redis 5.0 integrates epoll through its event‑loop abstraction with detailed code examples and debugging tips.

CEvent-drivenNetwork programming
0 likes · 13 min read
Understanding epoll Programming and Its Use in Redis Server
Liangxu Linux
Liangxu Linux
Jul 24, 2021 · Fundamentals

Why Blocking I/O Slows Your Server and How Select, Poll, and Epoll Fix It

This article explains the drawbacks of traditional blocking network I/O, introduces non‑blocking reads, and walks through the evolution from multithreaded workarounds to kernel‑level multiplexing mechanisms such as select, poll, and epoll, showing code examples and performance considerations.

IO MultiplexingNon-blocking I/Oblocking I/O
0 likes · 13 min read
Why Blocking I/O Slows Your Server and How Select, Poll, and Epoll Fix It
Liangxu Linux
Liangxu Linux
Jul 17, 2021 · Operations

Mastering Linux epoll: How IO Multiplexing Powers High‑Performance Servers

This article explains the fundamentals of IO multiplexing in Linux, compares naive loop‑based approaches with kernel‑provided mechanisms, dives deep into epoll's three system calls, its internal red‑black‑tree and ready‑list design, and shows which file descriptors can be efficiently managed with epoll.

Event-drivenIO Multiplexingepoll
0 likes · 17 min read
Mastering Linux epoll: How IO Multiplexing Powers High‑Performance Servers
Sohu Tech Products
Sohu Tech Products
Jul 7, 2021 · Backend Development

Understanding Linux epoll: IO Multiplexing, Kernel Mechanisms, and Efficient Event Handling

This article explains the fundamentals of Linux epoll as a high‑performance IO multiplexing tool, compares it with select and poll, shows why non‑blocking file descriptors are required, and details the kernel‑level data structures and callbacks that make epoll efficient for backend services.

Event-drivenIO MultiplexingLinux kernel
0 likes · 16 min read
Understanding Linux epoll: IO Multiplexing, Kernel Mechanisms, and Efficient Event Handling
Liangxu Linux
Liangxu Linux
Jun 24, 2021 · Backend Development

When to Choose epoll LT vs ET? A Deep Dive into Linux Non‑Blocking I/O

This article explains the differences between epoll's level‑triggered (LT) and edge‑triggered (ET) modes, shows how to use epoll_create, epoll_ctl, and epoll_wait, provides complete C++ examples for read and write handling, and offers practical guidance on avoiding common pitfalls in high‑performance Linux network programming.

ET modeLT modeLinux
0 likes · 24 min read
When to Choose epoll LT vs ET? A Deep Dive into Linux Non‑Blocking I/O
21CTO
21CTO
Jun 15, 2021 · Backend Development

Master High‑Performance Linux Servers with OpenResty, Epoll, and Lua

Learn how Linux’s non‑blocking I/O mechanisms such as select, poll, and epoll enable high‑concurrency servers, explore OpenResty’s Lua‑based architecture, and follow step‑by‑step instructions for installing, configuring, and troubleshooting a performant OpenResty/Nginx environment on Linux.

LinuxLuaNGINX
0 likes · 11 min read
Master High‑Performance Linux Servers with OpenResty, Epoll, and Lua
Tencent Cloud Developer
Tencent Cloud Developer
Jun 10, 2021 · Backend Development

Understanding Nginx Architecture: Master/Worker Processes, Hot Reload, Epoll, and Load Balancing

The article explains Nginx’s master‑worker architecture, showing how the master process handles signals, restarts workers, and performs hot configuration or binary reloads, while workers use an event‑driven epoll loop with an accept‑mutex to efficiently process connections and balance load across cores without multithreading.

Backend DevelopmentMaster ProcessNGINX
0 likes · 10 min read
Understanding Nginx Architecture: Master/Worker Processes, Hot Reload, Epoll, and Load Balancing