转自: http://blog.csdn.net/starxu85/article/details/3441480
对服务器而言最重要的就是优化了.
apache的优化文章,相信你也见过不少了.
这里稍微摘出lighttpd的几个优化参数看一看.
1 最大连接数
默认是1024
修改 server.max-fds,大流量网站推荐2048.
因为lighttpd基于线程,而apache(MPM-prefork)基于子进程,
所以apache需要设置startservers,maxclients等,这里不需要
2 stat() 缓存
stat() 这样的系统调用,开销也是相当明显的.
缓存能够节约时间和环境切换次数(context switches)
一句话,lighttpd.conf加上
server.stat-cache-engine = “fam”
lighttpd还另外提供simple(缓存1秒内的stat()),disabled选项.
相信没人会选disabled吧.
3 常连接(HTTP Keep-Alive)
一般来说,一个系统能够打开的文件个数是有限制的(文件描述符限制)
常连接占用文件描述符,对非并发的访问没有什么意义.
(文件描述符的数量和许多原因有关,比如日志文件数量,并发数目等)
这是lighttpd在keep-alive方面的默认值.
server.max-keep-alive-requests = 128
server.max-keep-alive-idle = 30
换言之,lighttpd最多可以同时承受30秒长的常连接,每个连接最多请求128个文件.
但这个默认值确实不适合非并发这种多数情况.
lighttpd.conf 中减小
server.max-keep-alive-requests
server.max-keep-alive-idle
两个值,可以减缓这种现象.
甚至可以关闭lighttpd keep-alive.
server.max-keep-alive-requests = 0
4 事件处理
对于linux kernel 2.6来说,没有别的可说
lighttpd.conf中加上这一句足矣
server.event-handler = “linux-sysepoll”
另外,
linux 2.4 使用 linux-rtsig
freebsd 使用 freebsd-kqueue
unix 使用 poll
5 网络处理
lighttpd 大量使用了 sendfile() 这样一个高效的系统调用.
减少了从应用程序到网卡间的距离.
(同时也减少了lighttpd对cpu的占用,这部分占用转嫁到内核身上了)
根据平台,可以设置不同的参数.
server.network-backend = “linux-sendfile”
(linux)
freebsd: freebsd-sendfile
unix: writev
如果有兴趣的话,也可以看看lighttpd在async io(aio)上的实现.
此外,网络方面,核心的参数也需要适当进行修改,
这里就不需要详细说明了.
6 本文涉及lighttpd.conf 参数总结
以下适合linux 2.6
server.stat-cache-engine = “fam”
server.network-backend = “linux-sendfile”
server.event-handler = “linux-sysepoll”
server.max-keep-alive-requests = 0
分享到:
相关推荐
Varnish和Lighttpd是两个非常重要的开源Web服务器软件,它们在Web性能优化和负载均衡方面发挥着关键作用。...而Lighttpd则是一款轻量级、快速且...记住,配置过程中需要根据实际情况调整参数和策略,确保最佳的运行效果。
在Windows上配置lighttpd与FastCGI,需要在lighttpd配置文件中启用fastcgi模块,并定义fastcgi.server部分,指定PHP处理器的位置和连接参数。 PHP5是广泛使用的服务器端脚本语言,尤其适合Web开发。在lighttpd和...
2. 高性能:通过优化的事件驱动模型,lighttpd能够快速响应请求,特别适合动态内容较少、静态内容为主的网站。 3. 模块化设计:lighttpd支持多种插件,如FastCGI、SSI、URL重写等,方便扩展功能,同时也便于代码...
5. **性能优化**: 考虑到ARM平台的性能限制,可以调整lighttpd的配置以优化性能,比如设置合适的并发连接数、开启缓存机制等。 6. **日志管理**: lighttpd的日志记录可以帮助监控服务器状态和排查问题。合理配置...
2. 启动服务:安装完成后,可以使用`sudo lighttpd -D -f /etc/lighttpd/lighttpd.conf`启动lighttpd服务器,其中-D参数表示在后台运行,-f指定配置文件路径。 3. 停止与重启:使用`sudo service lighttpd stop`...
1. 优化:通过调整配置文件中的参数,如启用HTTP压缩、限制最大连接数、启用Keep-Alive等,可以进一步提升性能。 2. 安全:设置防火墙规则限制访问,启用mod_evasive防止DDoS攻击,配置mod_access控制IP访问,确保...
通过调整配置参数,如缓冲区大小、连接数限制等,优化服务器性能。 此外,lighttpd与FastCGI结合使用,可以高效地运行PHP等动态语言应用。例如,配置FastCGI模块`mod_fastcgi`,设置fastcgi.server,指定监听端口和...
- **配置 PHP5**:在安装过程中需要指定一些重要的参数,例如: ```sh ./configure --prefix=/usr/local/...
### Lighttpd源码分析 #### 一、Lighttpd简介 Lighttpd是一款轻量级的Web服务器软件,以其高效、...对于开发者来说,这种分析不仅有助于更好地配置和优化Lighttpd服务,还能为开发高性能Web服务提供宝贵的参考价值。
此外,还可以调整lighttpd的配置参数,如`server.max-keep-alive-idle`和`server.max-read-idle`,以缩短空闲连接的存活时间和读取超时时间,减少攻击者维持无效连接的机会。 至于SSL Death Alert攻击,这是SSL/TLS...
首先,RoR性能优化涉及到多个层面,包括应用程序的部署、服务器配置以及代码优化。在部署方面,操作系统的选择至关重要。RoR通常在Unix类操作系统上运行最佳,如RHEL、CentOS、Ubuntu和SuSE Linux。对于AMD Opteron ...
测试环境是在一台配置为8核CPU、4GB内存的PC服务器上进行,网卡为1G,所有服务器参数都进行了优化。 测试方案采用了Apache自带的`ab`命令,通过设置不同的并发请求数量(500至10000)以及两种不同大小的静态文件...
进一步,**对TCP/IP网络参数进行调整**有助于增强服务器的抗攻击能力。设置`net.ipv4.tcp_syncookies = 1` 可防止SYN Flood攻击,并通过 `sysctl -p` 应用更改。 **配置YUM**以保持软件更新是很关键的。导入RPM-GPG...
- **配置FastCGI**:在Lighttpd的配置文件中添加FastCGI模块和相关设置,指定PHP解释器的位置和连接参数。 4. **Discuz论坛的安装**: - **准备环境**:确保Lighttpd、PHP和MySQL都已经正确运行,且PHP支持所需的...
在本文中,我们将深入探讨 Lighttpd 的内部机制,理解其设计思想,以及如何通过源码分析来优化和定制服务器配置。 一、Lighttpd 的特性与优势 1. 轻量级:Lighttpd 的设计目标是提供高效且低内存占用的服务,尤其...
此外,合理配置服务器参数可以进一步提升性能。 - **软件优化**:通过使用轻量级的Web服务器如Nginx或Lighttpd替换传统的Apache等,可以显著降低资源消耗并提高响应速度。 - **代码优化**:针对业务逻辑进行代码层面...
此外,对于Lighttpd的配置,需要修改`/etc/lighttpd/lighttpd.conf`文件,设定服务器模块、文档根目录、错误日志、访问日志等参数,以及权限设置,以确保服务器的正常运行和安全。 ### 总结 Ruby 1.8.6在Linux下的...
这涉及到理解配置文件的语法、设置虚拟主机、调整性能参数等。 7. **开发与扩展**:除了基本的使用,开发者还可以根据需求扩展Lighttpd的功能,比如编写新的模块或插件,以满足特定的业务逻辑。 总的来说,"c web ...