Lighttpd基础优化
<div style="color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: #ffffff; margin: 8px;">Lighttpd基础优化
<div class="entry" style="line-height: 1.4em;">lighttpd默认的并不适合我们的一些应用.因此需要进行修改.编辑/etc/lighttpd/lighttpd.conf文件.
1.事件处理
对于linux kernel 2.6来说,没有别的可说
lighttpd.conf中加上这一句足矣
server.event-handler = "linux-sysepoll"
2.stat() 缓存
stat() 这样的系统调用,开销也是相当明显的.
缓存能够节约时间和环境切换次数(context switches),此项有三个选项:fam,simple(缓存1秒内的stat()),disabled.一般我们较多使用前两项.
在lighttpd.conf加上
server.stat-cache-engine = "fam"
3.网络处理
lighttpd 大量使用了 sendfile() 这样一个高效的系统调用.
减少了从应用程序到网卡间的距离.(同时也减少了lighttpd对cpu的占用,这部分占用转嫁到内核身上了)
server.network-backend = "linux-sendfile"
(linux)
freebsd: freebsd-sendfile
unix: writev
根据平台,可以设置不同的参数.如下所示
OSMethodConfig ValueallselectselectUnixpollpollLinux 2.4+rt-signalslinux-rtsigLinux 2.6+epolllinux-sysepollSolaris/dev/pollsolaris-devpollFreeBSD, ...kqueuefreebsd-kqueueNetBSDkqueuekqueue4.常连接(HTTP Keep-Alive)
一般来说,一个系统能够打开的文件个数是有限制的(文件描述符限制)
常连接占用文件描述符,对非并发的访问没有什么意义.
(文件描述符的数量和许多原因有关,比如日志文件数量,并发数目等)
<div class="entry" style="line-height: 1.4em;">Sponsored Links
页:
[1]