Architecture overview
After Server has started listening to all sockets, Accept
and Worker
are two main loops responsible for processing incoming client connections.
Once connection accepted Application level protocol processing happens in a protocol specific Dispatcher
loop spawned from Worker
.
Please note, below diagrams are outlining happy-path scenarios only.
Accept loop in more detail
Most of code implementation resides in actix-server
crate for struct Accept
.
Worker loop in more detail
Most of code implementation resides in actix-server
crate for struct Worker
.
Request loop roughly
Most of code implementation for request loop resides in actix-web
and actix-http
crates.