什么是Nginx
Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符URI或者统一资源定位符URL作为沟通依据,通过HTTP协议提供各种网络服务。
Nginx是一个跨平台的Web服务器,可运行在Linux、MacOS、Windows、AIX、FreeBSD等操作系统上,而且可使用当前操作系统特有的高效API来提高性能。
Web服务器简述
Tomcat和Jetty面向Java语言,是重量级的Web服务器。
IIS只能在Windows上运行。因为Windows的稳定性与其他性能比不上Unix,所以在需要高性能Web服务器的场合下,“IIS”不经常被使用。
Apache发展时间长,是个重量级的、不支持高并发的Web服务器。若有上万计并发的HTTP请求同时访问,会导致服务器消耗大量内存,操作系统内核因对线程进行切换也会消耗大量CPU资源,大大降低HTTP请求的平均响应速度。因此,促使了Lighttpd和Nginx的出现。
Lighttpd和Nginx一样都是轻量级、高性能的Web服务器,其中欧美使用Lighttpd较多,国内更青睐Nginx。
Nginx的特点
1、更快 正常情况下,单次请求下会有更快的反应;高峰时期,能比其他Web服务器更快的相应请求
2、高扩展性 Nginx是由多个不同功能、不同层次、不同类型且耦合极低的模块组成
3、高可靠性 因为其核心代码的优秀设计、模块设计的简单性、官方提供的模块稳定(每个worker进程相对独立)
4、低内存消耗 一般情况,1万个非活跃HTTP Keep-Alive连接在Nginx仅消耗2.5MB内存
5、单机支持10万以上的并发连接
6、热部署 因为master管理进程与worker工作进程的分离设计,可在7*24h不间断服务的前提下,升级Nginx的可执行文件。也支持不停止服务就更新配置项、更换日志文件扽功能。
7、最*的BSD许可协议 运行用户免费使用Nginx,可直接修改或使用源码与发布。