Server network-backendDetails » History » Revision 8

« Previous | Revision 8/12 (diff) | Next »
kjikaqawej, 2008-12-22 09:38
typos, formatting fixes option

The basic network interface for all platforms at the syscalls read() and write(). Every modern OS provides its own syscall to help network servers transfer files as fast as possible

  • linux-sendfile - is recommended for small files.
  • writev - is recommended for sending many large files
  • gthread-aio - available from lighttpd 1.5. As of r1605, this is compiled in by default (ie, lighttpd will not compile without glib2 >= 2.4.0 installed). gthread is provided by glib2. The package in redhat is named "glib2" and in debian and ubuntu "libglib2.0-dev"
  • posix-aio - uses librt (or libc on FreeBSD)
  • linux-aio-sendfile - available when libaio is installed on the system. On Centos 4/RHEL4, you can install libaio by doing

    yum -y install libaio-devel

Enabled when lighttpd is configured with --with-linux-aio

Note: linux-aio is disabled in lighttpd-1.5-svn but can be re-enabled by modifying several files. ( )

Comparison of performance with different network backends is available here = "linux-sendfile"

Updated by kjikaqawej over 13 years ago · 8 revisions