Apache、Lighttpd、Nginx优缺点对比

Apache

它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它免费、稳定且性能卓越,是最早可用的Web应用服务器;

Lighttpd

  • Lighttpd 是一个德国人领导的开源Web服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。
  • 是一个具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。是众多OpenSource轻量级的web server中较为优秀的一个。
  • 支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能。

Nginx

  • Nginx(engine x)是一个高性能的Web服务器和反向代理服务器,也可以作为邮件代理服务器;
  • Nginx是由俄罗斯人采用C语言开发编写的,其语言配置中就是默认俄罗斯文,公布于2004年
  • Nginx 专为性能优化而开发,占有内存少,并发处理能力强,以高性能、低系统资源消耗而闻名,Nginx官方测试为5W并发请求;
  • 十分轻量级的HTTP服务器,是一个高性能的HTTP和反向代理服务器,Nginx以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡。其拥有匹配 Lighttpd的性能,同时还没有Lighttpd的内存泄漏问题。
  • 有着海量的支持,有着高效的性能处理能力,细到内存中每个字节的去节省空间的空间管理,适用于多种操作系统的代码支持,
  • 当前 Ngnix 美中不足之处是相关的文档和用户经验都还是很欠缺,用户之间还很难做到可借鉴性的交流。

比较

server Apache Nginx Lighttpd
server Apache Nginx Lighttpd
Proxy代理 非常好 非常好 一般
Rewriter 非常好 一般
Fastcgi 不好 非常好
热部署 不支持 支持 不支持
系统压力比较 很大 很小 比较小
稳定性 非常好 不好
安全性 一般 一般
技术支持 非常好 很少 一般
静态文件处理 一般 非常好
Vhosts虚拟主机 支持 支持 支持
反向代理 一般 非常好 一般
Session sticky 支持 不支持 不支持
量级 重量级 轻量 轻量
复杂度(安装、配置) 较复杂 简单 简单

各自优缺点比较 总结(静态资源)

Apache

  • 优点

    • Apache的兼容性和稳定性都是非常强
    • Apache 的模块比 Nginx/Lighttpd丰富
    • Apache在处理动态请求比Nginx/Lighttpd更有优势
  • 缺点

    • 属于重量级web服务器(重量级主要是在软件包的大小上比较大,软件的耦合度大)
    • 在速度、性能不及其他轻量级web服务器,并且消费内存较高。使用传统的select模型,比较稳定的Prefork模式为多进程模式,需要经常派生子进程。所以消耗的cpu等服务器资源比较大
  • 建议方案

    • 后台服务器(主要处理php及一些功能请求,如:url)

Lighttpd

  • 优点

    • 虚机的配置处理方式比 apache 直观,比Apache轻量
    • 轻量级web服务器,cpu占用低,效能好,模块丰富,对fastcgi支持非常好。
    • 支持高并发,和Nginx差不多,比apache性能高很多。
  • 缺点

    • 稳定性没有Apache和Nginx高,bug相对较多
  • 建议方案

    • 图片服务器

Nginx

  • 优点

    • 轻量级,比apache 占用更少的内存及资源
    • 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
    • 高度模块化的设计,编写模块相对简单
    • 有Lighttpd的性能,且更稳定,没有其内存泄露问题
    • 处理静态文件,索引文件以及自动索引,打开文件描述符缓冲。
  • 缺点

    • nginx处理动态请求是鸡肋,不如Apache
  • 建议方案

    • 前端服务器(利用他占有系统资源少的优势来处理静态页面大量请求)

总体来说,如果不确定应该用什么服务器,那就应该用Apache,
但是稍微可以配置多个服务的情况下,做一个Nginx在最前端,然后把需要的功能转发给Apache是最好的选择,如果你打算跑fcgi,Lighttpd是不二的选择;如果你打算做图片服务器,独立的Lighttpd也是很好的选择
现在国内 Nginx 的用户越来越多了,多数拥抱 Nginx 的网站都钟意其优异的性能表现,如果是相对比较大的网站,节约下来的服务器成本无疑是客观的。而有些小型网站往往服务器不多,如果采用 Apache 这类传统 Web 服务器,似乎也还能撑过去。但个人觉得有其很明显的弊端: Apache 在处理流量爆发的时候(比如爬虫或者是 Digg 效应) 很容易过载,这样的情况下采用 Nginx 不失为大胆而有效的尝试。

发布了4 篇原创文章 · 获赞 4 · 访问量 125

猜你喜欢

转载自blog.csdn.net/qq_41681399/article/details/105223698
今日推荐