## web服务器
首先 Nginx 给大家都第一印象就是高性能web服务器,除了Nginx还有很多的web服务器。
* IIS:微软提供一款web服务器软件,是Windows平台中比较优秀的web服务器软件,因为安全问题,性能问题等,其逐渐被其他软件替换。
* Apache:是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中,Apache HTTP服务器是一个模块化的服务器,源于NCSA httpd服务器。
* Tomcat:Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
* WebLogic:WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。
* Lighttpd:
Lighttpd 是一个德国人领导的开源 Web 服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的 Web Server 环境。具有非常低的内存开销,CPU 占用率低,效能好,以及丰富的模块等特点。
* Squid:
Squid cache 是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。
* Varnish:
Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang 使用3台Varnish代替了原来的12台Squid,性能比以前更好。
* Tengine:
Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验
* kangle:
kangle web服务器是一款跨平台、功能强大、安全稳定、易操作的高性能web服务器和反向代理服务器软件,支持asp、net、java。
...
## 特点
图片来自:陶老师PPT
![](https://img.kancloud.cn/bc/e6/bce616d11483b2c7fbdef446da98525c_865x389.png)
1. 高并发、高性能
一般情况下,这里需要一组数据或图表进行支撑,这里我就先省略了,毕竟目前来说这个特性算是公认的,nginx充分挖掘了硬件/操作系统的特性,使得自身性能超群。
2. 可扩展性
其优秀的模块设计,使得nginx的用户可以使用很多第三方模块,而且围绕nginx的生态圈是非常成熟,几乎你想要的功能,都可以找到对应的模块。
3. 高可靠性
Nginx的可靠性是大家有目共睹的,很多家高流量网站都在核心服务器上大规模使用Nginx。Nginx的高可靠性来自于其核心框架代码的优秀设计、模块设计的简单性;另外,官方提供的常用模块都非常稳定,从未崩溃过。
4. 热部署
支持热部署(不停止服务,更新配置),master管理进程与worker工作进程的分离设计,使得Nginx能够提供热部署功能,即可以在7*24小时不间断服务的前提下,升级Nginx的可执行文件。
5. BSD许可
是一个给于使用者很大自由的协议,BSD 代码鼓励代码共享,但需要尊重代码作者的著作权
## Nginx 适用场景
![](https://img.kancloud.cn/dd/e5/dde5c163b1d6f4e7e4d80aee3f2b4e91_797x412.png)