目录
一、nginx概念
二、nginx特点
三、nginx应用场景
四、nginx和apache
五、阻塞和非阻塞
六、同步和异步
七、编译安装nginx
八、升级nginx
九、总结
一、nginx概念 1.nginx概念
Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器。Nginx 是由 Igor Sysoev 为俄 罗斯访问点开量第二的 Rambler.ru 站发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。其将源代码以类 BSD 许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
2.nginx版本
第一个公开版本 0.1.0
目前版本1.25.1
特殊版本:Tengine淘宝网二次创作版本
二、nginx特点 1.nginx特点
(1)高性能、轻量级web服务软件
(2)稳定性高
(3)资源消耗低
(4)对http并发连接的处理能力高
单台物理服务器可支持30000-50000个并发请求
三、nginx应用场景 1.nginx应用场景
(1)静态服务器 (图片、视频服务、文本)
(2)动态服务
(3)反向代理, 负载均衡
(4)缓存服务
四、nginx和apache 1.简述Nginx和Apache的差异
(1)Nginx是一个甚于事件的Web服务器,Apache是一个基于流程的服务器;
(2)Nginx避免子进程的概念,Apache是基于子进程的;
(3)Nginx在内存消耗和连接方面更好,Apache在内存消耗和连接方面一般;
(4)Nginx的性能和可伸缩性不依赖于硬件,Apache依赖于CPU和内存等硬件;
(5)Nginx支持热部署,Apache不支持热部署;
(6)Nginx对于静态文件处理具有更高效率,Apache相对一般;
(7)Nginx在反向代理场景具有明显优势,Apache相对一般。
2.Nginx 相对于 Apache 的优点
(1)轻量级,同样是 web 服务,比 Apache 占用更少的内存及资源 ;
(2)高并发,Nginx 处理请求是异步非塞的,而 Apache 则是阻塞型的,在高并发下 Nginx 能保持低资源低消耗高性能;
(3)高度模块化的设计
(4)编写模块相对简单;
(5)社区活跃,各种高性能模块出品迅速。
3.Apache 相对于 Nginx 的优点
(1)rewrite,比 Nginx 的 rewrite 强大;模块超多,基本想到的都可以找到;
(2)少 bug ,Nginx 的 bug相对较多;
(3)超稳定存在就是理由,一般来说,需要性能的 web 服务,用 Nginx 。如果不需要性能只求稳定,那就Apache。
Nginx 处理动态请求是弱项,一般动态请求要 Apache 去做,Nginx 只适合静态和反向。
五、阻塞和非阻塞 1.阻塞
必须一个一个的处理,一个任务处理完后下一个才能处理,当一个任务正在处理中,下一个只能等待,形成阻塞。
例子:顾客买衣服,一个顾客买,进入试衣间,第二个顾客被门阻塞,只能等第一个顾客出来才能进入。
2.非阻塞
可以一起进行处理,没有阻拦,不分先后,无序的。
例如:买衣服可以不被阻拦,所有人都可以进入试衣间。
六、同步和异步 1.同步
一群任务,一个完成才能继续完成一个任务。
例子:一群人点菜,必须一个点完上菜后,下一个人才能点。
2.异步
一群任务,可以一起执行,不分先后,无序执行。
例子:一群人点菜可以一起点一起上菜。
七、编译安装nginx 1.关闭防火墙,将安装nginx所需软件包传到/opt目录下
2.安装依赖包
3.创建运行用户与组
4.编译安装Nginx
5.指定nginx的安装路径和模块安装
6.make &&make install
7.让系统识别nginx的操作命令
8.检查配置文件是否又错误
9.启动成功
10.添加 Nginx 系统服务
11.将nginx加入系统服务,重启服务
12.nginx主配置文件nginx.conf
配置使用 epoll 模型,文件最大1024
13.nginx-t检查配置文件
14.网站验证
八、升级nginx
1.下载新版本包,并解压
2.配置安装路径和模块安装
3.make
4.先关闭nginx,再覆盖文件
5.查看版本
6.网页验证
九、总结
nginx服务主要时轻量级,资源耗费少的网站服务,稳定性高,资源消耗低,并发处理高。只有cpu,文件打开数量受到影响。阻塞和非阻塞,异步和同步,为了性能高,只能放弃稳定性选择异步非阻塞。主要应用于静态服务器,动态服务,反向代理,负载均衡,缓存服务。