Project

General

Profile

Server network-backendDetails » History » Revision 10

Revision 9 (kjikaqawej, 2012-08-11 10:42) → Revision 10/11 (gstrauss, 2016-09-11 00:59)

h2. server.network-backend option 

 +server.network-backend+ 

 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 <code>--with-linux-aio</code> 

 Note: linux-aio is disabled in lighttpd-1.5-svn but can be re-enabled by modifying several files. ( http://trac.lighttpd.net/trac/changeset/2002 ) 

 Comparison of performance with different network backends is available "here":http://www.lighttpd.net/2007/2/3/raw-io-performance  


  server.network-backend = "linux-sendfile" 


 </pre>