1、Apache

Apache是非常强大的老牌Web服务器,具有模块化结构,拥有众多非常成熟稳定的模块,目前仍是使用非常广泛的服务器,但它是基于多进程HTTPServer,需要对每个用户请求创建一个子进程/线程来响应,当访问较大时,会占用较多的系统资源(主要事实CPU和内存),所以高并发的处理并不是Apache的强项。

2、Nginx

Nginx是一款十分轻量级的HTTP服务器,同时也是一款非常不错的反向代理、负载均衡服务器。Nginx以事件驱动,专为性能优化而开发,支持内核Poll模型,能经受高负载的考验,并且在高负载下具有很高的稳定性。其他HTTP服务器在遇到访问的峰值或恶意攻击时,很可能会因为服务器内存频繁交换而导致内存耗尽,最终导致服务器失去响应,而Nginx采取了分阶段资源分配技术,是的它的CPU与内存占用率非常低。Nginx官方表示保持10000个没有活动的连接,只占2.5MB内存,所以在抵御类似DOS攻击时,Nginx有非常出色的表现。除此之外,就稳定性而言,Nginx比Lighttpd更胜一筹。

Nginx支持热部署,启动非常容易,并且几乎可以做到不间断运行,即使运行数月也不需要重新启动。Nginx还可以在不间断服务的情况下进行版本升级。

3、Lighttpd

Lighttpd是一款轻量级的Web服务器,占用内存小且CPU负荷低,是服务于静态内容的不错选择。

4、IIS

IIS作为运行在Windows环境下的Web服务器软件,可以对.NET、PHP等进行解析。IIS只能运行于Windows下,而绝大多数开源框架或软件最佳搭配环境为Linux/UNIX,这是因为IIS不具有开源软件低成本、以扩展的特点。从开源、投入、扩展、性能等方面考虑,IIS均不是优先考虑对象。

5、Tomcat

Tomcat服务器时一个免费的开源的Web应用服务器,属于轻量级应用服务器,是开发和调试JSP程序的首选。Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,但处理静态页面的能力较差。

Lighttpd是一个单进程模型的Web服务器,内存使用量很少。Nginx在内存分配方面表现良好,使用多线程来处理请求,这使得多个线程之间可以共享内存资源,从而使内存使用量大大减少。此外Nginx使用分段内存分配策略,按需分配及时释放,总体占用内存很少,可支持较大的并发连接。Apache在运行时使用较大的内存,是多进程模型,使用基于内存池策略的内存管理方法,使得在运行开始时便一次性申请大片内存作为内存池,这=这样在随后需要的时候只在内存池中直接获取,不需要再分配,因此不适合大并发的情况。Nginx作为一个后起之秀,发展速度非常迅猛,目前各大网站纷纷采用Nginx就说明它的优势是不言而喻的。

Web服务器对比介绍的更多相关文章

  1. 转: 三大WEB服务器对比分析(apache ,lighttpd,nginx) (2008年的旧文,仅供参考之用)

    from:  http://www.blogjava.net/daniel-tu/archive/2008/12/29/248883.html 三大WEB服务器对比分析(apache ,lighttp ...

  2. java web服务器tomcat介绍【转载】

    机器矩阵2016-08-10 22:14 java程序员亲切地称他为tom猫,看到这只猫可以说明1 服务器部署成功了 ,2 网络是联通的. 到底这只猫是什么来头呢? tomcat是Apache基金会下 ...

  3. [转]三大WEB服务器对比分析(apache ,lighttpd,nginx)

    原博文地址:http://www.blogjava.net/daniel-tu/archive/2008/12/29/248883.html 一.软件介绍(apache  lighttpd  ngin ...

  4. 三大WEB服务器对比分析(apache ,lighttpd,nginx)

    一.软件介绍(apache  lighttpd  nginx) 1. lighttpd Lighttpd是一个具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点.lighttpd是众多 ...

  5. Apache、Lighttpd、Nginx 三种web服务器对比

    简介 1.    Apache Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.Apac ...

  6. (转)三大WEB服务器对比分析(apache ,lighttpd,nginx)

    ref : https://www.iteye.com/blog/hai0378-1860220   一.软件介绍(apache  lighttpd  nginx) 1. lighttpd Light ...

  7. 闲来无聊,研究一下Web服务器 的源程序

    web服务器是如何工作的 1989年的夏天,蒂姆.博纳斯-李开发了世界上第一个web服务器和web客户机.这个浏览器程序是一个简单的电话号码查询软件.最初的web服务器程序就是一个利用浏览器和web服 ...

  8. web服务器、tomcat、servlet是什么?它们之间的关系又是什么?

    今天偶然看到常见web服务器的介绍有Apache HTTP server.Nginx.Microsoft IIS.GWS,心中不禁产生了疑问,这些都是什么呢?一直认为tomcat就是web服务器,以下 ...

  9. 高性能Web服务器Nginx

    高性能Web服务器Nginx介绍 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.其特点是占有内存少,并发能力强 ...

随机推荐

  1. Spring 之注解事务 @Transactional(转载)

    Spring在TransactionDefinition接口中规定了7种类型的事务传播行为, 它们规定了事务方法和事务方法发生嵌套调用时事务如何进行传播: 事务传播行为类型 事务传播行为类型 说明 P ...

  2. [算法][LeetCode]Spiral Matrix——螺旋矩阵

    题目要求 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spir ...

  3. win7卸载IE11

    好多人升级了IE11后发现各种不好用,比如经常卡死,无响应.调试工具不好用等缺点. 现在告诉你如何卸载IE11 查看已安装的更新 右键wie卸载,即可需要重启

  4. Java+selenium+Fitnesse

    刚开始接触selenium是进公司后,老大给我们培训了一下UI自动化(其实也不叫培训啦,就是让我们知道有这么个东西吧,我这么说,老大看到得打人了,哈哈).要进行自动化测试,当然就得搭建一个自动化测试框 ...

  5. 模拟Push和Pop动作

    //利用CATransition来作模拟 //模拟Push - (void)pushView:(UIView *)pushView inView:(UIView *)inView { CATransi ...

  6. If a cache file exists, it is sent directly to the browser, bypassing the normal system execution.

    w开启缓存,缓存视图,用于后续请求. https://www.codeigniter.com/userguide3/overview/appflow.html http://codeigniter.o ...

  7. H5 localStorage入门

    定义 只读的 localStorage 允许你访问一个 Document 的远端(origin)对象 Storage:数据存储为跨浏览器会话.localStorage 类似于 sessionStora ...

  8. python基础-第十篇-10.2CSS基础

    CSS是Cascading Style Sheet的简称,中文为层叠样式表 属性和属性值用冒号隔开,以分号结尾 引入方式 行内式--在标签的style属性中设定CSS样式 <body> & ...

  9. Linux 下的同步机制

    2017-03-10 回想下最初的计算机设计,在单个CPU的情况下,同一时刻只能由一个线程(在LInux下为进程)占用CPU,且2.6之前的Linux内核并不支持内核抢占,当进程在系统地址运行时,能打 ...

  10. 解决MySQL ERROR 1130 (HY000): Host '192.168.31.115' is not allowed to connect to this MariaDB server

    # 给root用户授权 GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.31.115' IDENTIFIED BY 'root' WITH GRANT O ...