举出三个以上的主流WEB服务器,并简述他们的特性和优缺点不限操作系统?
主流的web服务器有几款:apache、nginx、Microsoft IIS、tomcat、lighttpd、WebLogic、Jboss等,其中以apache,nginx和Microsoft IIS的市场占用率最大。
Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。具体有以下特性:
1、多计算机运行平台;
2、支持最新的http/1.1协议;
3、易配置(httpd.conf);
4、支持虚拟主机;
5、支持http认证;
6、可作为代理服务器;
7、提供web界面监控服务器状态
8、支持ssl数据传输;
9、支持fastcgi;
10、具有用户会话过程的跟踪能力;
优点:源代码开放可以运行在unix,windowns,linux平台上,可移植性、支持的模块多、稳定性很好、相对于其他web server,apache的bug要少一些,处理动态请求方面比较好;
缺点:性能,速度上不及其他轻量级的web服务器,但是也是重量级产品,所消耗的内存,cpu也比其他的要高。相对于nginx来说,apache占用的系统资源要多一些,处理静态请求较nginx要差一些,并发数也较nginx少一些。负载能力较nginx差一些。
nginx具有以下特性:
1、处理静态文件,索引文件以及自动索引
2、无缓存的反向代理加速,简单的负载均衡和容错
3、必须使用FastCGI方式来执行PHP程序,快速响应请求
4、模块化结构
5、nginx专为性能优化而开发,支持epoll模型,能经受高负载的考验,官方表明能支持高达5w的并发连接数
6、nginx具有很高的稳定性,其他web服务器,当遇到访问的峰值,或者有人恶意发起慢速连接时,也很有可能会导致服务器物理内存耗尽,频繁交换而失去响应,只能重启服务器。例如当前apache一旦上到200个进程以上,web响应速度就明显非常缓慢了,而nginx采取了分阶段资源分配技术,使得它的CPU与内存占用率非常低。nginx官方表示保持1w个没有活动的了解,nginx只占用2.5M内存,所以类似DOS这样的***对nginx来说基本上是毫无用处的。
7、支持热部署。nginx启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动,还能够在不间断服务的情况下,对软件版本进行升级或重载配置文件的信息。
优点:源代码开放发高性能的http和反向代理服务器,在高并发的情况下,nginx是apache不错的替代品,他能够支持高达50000个并发连接响应,内存,cpu等系统资源消耗也是很低的。
缺点:支持模块比较少,并发性比较好,较apache稳定性差一些,处理动态请求是软肋。
IIS具体有以下特性:IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。它提供ISAPI(Intranet Server API)作为扩展Web服务器功能的编程接口;同时,它还提供一个Internet数据库连接器,可以实现对数据库的查询和更新。IIS提供了一个图形界面的管理工具,称为 Internet服务管理器,可用于监视配置和控制Internet服务。
优点:Microsoft IIS 配置很简单,自IIS 6.0版本之后,其在安全性,可靠性、可扩展性方面有了很大的提升。
缺点:不开放源代码,只能运行在windows系统上,bug一般较多等。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。