========================
Performance Improvements
========================

------------
Module: core
------------

:Author: Jan Kneschke
:Date: $Date: 2004/08/01 07:01:29 $
:Revision: $Revision: 1.1 $

:abstract:
  handling performance issues in lighttpd
  
.. meta::
  :keywords: lighttpd, performance
  
.. contents:: Table of Contents

Description
===========

Performance Issues
------------------

lighttpd is optimized into various directions. The most important is
performance. The operation system has two major facalities to help lighttpd
a deliver it best performance.

The first one is the (Event Handler)_ which cares about notifying the server
that one of the connections is ready to send or to recieve. As you can see
every OS has at least the select() call which has some limitations. 

Event Handlers
--------------

- event handler

  - all: select
  - Unix: poll
  - Linux 2.4: rt-signals
  - Linux 2.6: epoll
  - Solaris: /dev/poll
  - FreeBSD and compat: kqueue

Configuration
`````````````

::

  server.event-handler = "..."
  
Network Handlers
----------------

- network handler

  - all: write
  - Unix: writev
  - Linux: sendfile, sendfile64
  - FreeBSD: sendfile
  - Solaris: sendfilev
  - AIX: send_file


