Difference between revisions of "Server Architecture"

From LVSKB
Jump to: navigation, search
(Software Software)
Line 27: Line 27:
 
=== Varnish ===
 
=== Varnish ===
  
[[Varnish]] uses the single-process event-driven architecture, because the main process of Varnish uses poll to process events.
+
[[Varnish]] uses the multiple-thread architecture. Each client connection is handled by a separate worker thread, though the main thread uses poll to process events on socket listening.
  
 
== References ==
 
== References ==

Revision as of 15:58, 28 June 2007

Server Architecture

Multiple-Process Architecture

Multiple-Thread Architecture

Single-Process Event-Driven Architecture

Multiple-Process Event-Driven Architecture

Multiple-Thread Event-Driven Architecture

Software Software

nginx

Nginx supports both the single-process event-driven architecture and the multiple-process event-driven architecture.

lighttpd

Lighttpd uses the single-process event-driven architecture.

squid

Squid uses the single-process event-driven architecture, because the main process of squid handles all kind of network connections, despite that different processes can handle disk I/O under the diskd configuration.

Varnish

Varnish uses the multiple-thread architecture. Each client connection is handled by a separate worker thread, though the main thread uses poll to process events on socket listening.

References