Nginx学习笔记系列一:为什么选择Nginx(常见的服务器对比)

常见的服务器对比

IIS

​ 全称Internet Information Service,即互联网信息服务,是由微软公司提供的基于windows系统的互联网基本服务。windows作为服务器,在稳定性和其他一些性能上都不如类UNIX系统,因此,在需要高性能Web服务器的场合下,IIS就会被冷落

TomCat

​ TomCat是一个运行Servlet和JSP的Web应用软件,Tomcat技术先进,性能稳定而且开放源代码,因此深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。但是Tomcat天生是一个重量级的Web服务器,对静态文件和高并发的处理比较弱

Apache

​ Apache的发展时期很长,同时也有过一段辉煌的业绩。Apache有很多优点,如稳定、开源、跨平台等等。但是它出现的时间太久了,在它兴起的年代,互联网产业规模远远不如今天,所以它被设计成一个重量级的、不支持高并发的Web服务器,在Apache服务器上,如果有数以万计的并发HTTP请求同时访问,就会导致服务器消耗大量内存,操作系统内核对成百上千的Apache进程做进程间的切换也会消耗大量的CPU资源,并导致HTTP请求的平均响应速度降低,这些都决定了Apache不可能成为高性能的Web服务器。这也促使了Lighttpd和Nginx的出现

Lighttpd

​ Lighttpd是德国的一个开源的Web服务器软件,它和Nginx一样,都是轻量级、高性能的Web服务器,欧美的业界开发者比较钟爱Lighttpd,而国内的公司更多的青睐Nginx,同时网上的Nginx的资源要更丰富一些

其他的服务器

Google Servers,Weblogic,Webshpere(IBM)

经过各个服务器对比,种种迹象都表明,Nginx将以性能为王。

Nginx的优点

  1. 速度更快、并发更高
    单次请求或者高并发请求的环境下,Nginx都会比其他web服务器响应的速度更快,一方面在正常情况下,单次请求会得到更快地响应,另一方面,在高峰期(如有数以万计的并发请求),Nginx比其他Web服务器更快的响应请求。Nginx之所以有这么高的并发处理能力和这么好的性能,原因在于Nginx采用了多进程和I/O多路复用(epoll)的底层实现

  2. 配置简单、扩展性强
    Nginx的设计极具扩展性,它本身就是有很多模块组成,这些模块的使用完全可以通过配置文件的配置来添加。这些模块有官方提供的,也有第三方提供的。如果需要完全可以开发服务自己业务特性的定制模块

  3. 高可靠性
    Nginx采用的是多进程模式运行,其中一个master主进程和多个worker进程,worker进程的数量可以手动设置,每个worker进程之间都是相互独立的提供服务,并且master主进程可以在某个worker进程出错时,快速去拉起一个新的worker进程提供服务

  4. 热部署
    现在互联网项目都要求以7*24小时进行服务的提供,针对这一要求,Nginx也提供了热部署功能,既可以在Nginx不停止的情况下,对Nginx进行文件升级、更新配置和更换日志文件等过能

  5. 成本低、BSD许可证
    BSD是一个开源的许可证,世界上的开源许可证有很多,现在比较流行的有6种,分别是GPL、BSD、MIT、Mozilla、Apache、LGPL。

为什么选择Nginx(常见的服务器对比)

Nginx本身是开源的,因此不仅可以免费的将Nginx应用在商业领域,而且还可以在项目中直接修改Nginx的源码来定制自己的特殊需求。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!