013. NETTY thread model
tags: Java development series The internet Design Patterns java netty Multithreading
Introduction to Netty
- Netty is a high-performance, high-scalable asynchronous event-driven network application framework, which greatly simplifies network programming such as TCP and UDP clients and server development.
2. Netty important four content
- REACTOR Thread Model: A High Performance Multi-threaded Program Design Idea.
- Netty's own defined Channel concept: Enhanced version of the channel concept.
- CHANNELPIPELINE duties Chain design mode: Event processing mechanism.
- Memory management: Enhanced Bytebuf buffer.
3. Netty overall structural map

-
Contains three blocks:
- Support for multiple transmission methods such as sockets.
- The codec implementation of a variety of protocols is provided.
- The core design contains an event processing model, the use of the API, and the BYTEBuffer is enhanced.
4. NETTY thread model
-
In order to better utilize multi-threaded characteristics, Netty implements the Reactor thread model.
-
There are four core concepts in the Reactor model:
- Resources Resource (request / task)
- Synchronous Event Demultiplexer Synchronous Event Multiplexer
- Dispatcher Distributor
- Request Handler Request Processor

5. EventLoopGroup initialization process


- Two groups of EventLoopGroup (Main & Sub) handles different events of different channels.
6. At EventLoop startup
- EVENTLOOP itself implements the Executor interface. When the Executor method is called, it is determined whether to start, and the built-in Executor creates a new thread to trigger the RUN method.

7. Bind binding port process

8. Channel Concept
Intelligent Recommendation
The core concept in Netty isEvent loop (EventLoop), Which is actually Reactor in Reactor mode,Responsible for monitoring network events and calling event handlers for processing.In the 4.x version of ...
Zero copy hard driver - kernel buffer - protocol engine only DMA copy avoids cpu copy There was actually a cpu copy of kernel buffer - socket buffer, but the copied information can rarely be ignored; ...
Why use Netty Netty is an asynchronous event-driven web application framework for rapid development of maintainable high-performance and high-profile servers and clients. Netty has the advantages of h...
Event cycle group All I / O operations in Netty are asynchronous, and the asynchronous execution results are obtained by channelfuture. Asynchronously executes a thread pool EventLoopGroup, it ...
table of Contents Thread model 1, traditional IO service model 2, Reactor mode reactor Three modes: to sum up Netty model Excommissum Thread model 1, traditional IO service model Blocked IO mode Get i...
More Recommendation
Hey everyone, I amJava small white 2021。 The programmer of the halfway is in the development of aircraft, and the opportunity to find a more interesting thing under the development of a surveying cour...
content 1. Single Reactor single thread 2. Single Reactor Multi -thread 3. Reactor Main Strike Model Single -threaded model (single Reactor single thread) Multi -threaded model (single Reactor multi -...
Single-threaded model: the boss thread is responsible for connection and data reading and writing Hybrid model: the boss thread is responsible for connection and data reading and writing, and the work...
This chapter of the Redis database server implementations are introduced, indicating achieve Redis database-related operations, including key-value pairs in the database to add, delete, view, update a...
1、b1041 2、b1042 3、b1043 4、b1044 5、b1045...