文章分类 - Nginx核心知识讲解
百万并发下的Nginx性能优化之道
摘要:Nginx是一个事件驱动的框架,所谓事件主要是指网络事件,那么Nginx每个连接会自然对应两个事件,一个读事件,一个写事件,所以我们在深入了解Nginx的各种原理,以及它在极端场景下的错误场景的处理时,我们必须首先理解什么是网络事件,下面我们来看如下的图: 比如主机A就是我们在家里的一台笔记本电脑,
阅读全文
摘要:之前我们提到nginx的命令行的时候,nginx的停止有两种方式,-s quit 和-s stop 其中stop表示立即停止nginx,quit表示优雅的关闭nginx;对应的信号也是同样的;还有我们之前提到的 reload 和热部署;我们都使用了优雅的停掉nginx,那么所谓的优雅的停掉nginx
阅读全文
摘要:热升级的完整流程 热升级能保证在不停止服务的情况下更换它的binary文件;这个功能非常有用,但在我们执行nginx的binary文件升级过程中,还是可能会遇到很多问题,比如:老的worker进程一直退不掉,新的worker进程出现了问题,我们要考虑使用回滚,或者说我们升级了新的nginx文件以后,
阅读全文
摘要:接下来我们来介绍reload重载配置文件的真相; 当我们更改了nginx配置文件的时候,我们都会执行nginx -s reload;那么我们执行这条命令的原因是希望nginx不能停止服务,始终还在处理新的请求的同时,把nginx的配置文件平滑的从旧的nginx.conf更新为新的nginx.conf
阅读全文
摘要:Nginx是一个多进程的程序,多进程之间进行通讯可以使用共享内存,信号等,但是我们在做进程间的管理时,通常只使用信号;下面我们来看下nginx的信号是怎样使用的? 能够发送和处理信号的有master进程,worker进程和nginx命令行; 我们先来看master进程,因为master进程会启动wo
阅读全文
摘要:上一讲我们提到了Nginx的多进程模型,由master作为父进程启动许多子进程,Nginx的父子进程之间是通过信号管理的,现在我们通过一个简单的演示,来直观地看下这些父子进程以及信号之间是怎么样工作的? 在Nginx配置当中,我启动了两个worker进程; 使用ps命令 ps -ef |grep n
阅读全文
摘要:接下来我们来看下Nginx的进程结构 Nginx其实有两种进程结构,一种是单进程结构,一种是多进程结构;单进程结构尼,其实不适用于生产环境,只适合我们做开发;因为在生产环境中我们需要保证Nginx足够健壮,以及Nginx可以利用多核的特性;而单进程的Nginx是做不到这一点的;所以默认的配置中都是打
阅读全文
摘要:Nginx的架构基础 为什么要讨论Nginx的架构基础尼? 因为Nginx运行在企业内网的最外层,也就是边缘节点,它处理的流量是其他应用服务器处理流量的几倍,我们知道任何一种问题在不同的数量级下解决方案是完全不同的;在Nginx它所处理的应用场景中所有的问题都会被放大,所以我们必须理解为什么Ngin
阅读全文
摘要:下载yum install python2-certbot-nginx
阅读全文
摘要:接下来我们看下TLS的通讯过程 通讯过程中,双方主要完成四个目的; (1):验证身份 (2):达成安全套件共识 (3):传递秘钥 (4):加密通讯
阅读全文
摘要:在之前的加密过程中,我们谈论了Alice和Bob之间进行通讯;但是他们有个前提条件;Alice必须知道Bob就是Bob,也就是它收到的信息必须是由Bob发来的;那么这样的一个新的问题在多方通讯的一个过程中尼? 必须有一个公信机构,那么这个机构就是CA机构,接下来我们看看CA是怎么样颁发证书和证书过期
阅读全文
摘要:对称加密与非对称加密有什么区别? 在对称加密中尼是指两个想通讯的人.包括Alice ,他们共同持有一段秘钥,而Bob尼,可以把原始明文的文档,通过这把秘钥加密生成加密文档;而Alice拿到这个文档以后尼他可以拿这把秘钥把加密文档转化为原始文档;而中间的任何人如果没有持有这把秘钥;即使它知道了对称加密
阅读全文
摘要:网络安全是当前非常受到关注的一个问题,大部分站点都是通过https来实现站点安全的,那么怎么样才能把自己的http站点变成https站点尼?我们需要了解ssl协议; TLS 协议究竟是怎么保证http的明文消息被加密的尼? 我们可以看下TLS的通用模型 在OSI七层模型中,应用层是http协议;那么
阅读全文
摘要:access日志记录了Nginx非常重要的信息,我们可以使用Nginx来分析定位问题;也可以用它来分析用户的运行数据;但是如果想要实时分析access.log相对比较困难;有一款工具叫GoAccess,它可以以图像化的方式通过WebSoxket协议实时的把access.log的变迁反应到浏览器中方便
阅读全文
摘要:之前向大家演示了Nginx怎样作为一个静态Web资源服务器工作;我们将以这个作为例子;把这个静态资源Web服务器作为上游服务器;再搭建一个Nginx作为反向 代理;然后向大家演示Nginx作为反向代理应该怎么使用,由于上游服务要处理非常复杂的业务逻辑而且强调开发效率;所以它的性能并不怎么样;我们使用
阅读全文
摘要:创建静态资源文件夹 启用 gzip gzip 参数详解: 假如根目录下有个文件夹dlib,我们需要把这个文件夹及其目录结构信息分享给用户,由用户来决定使用哪些文件;这种常用的场景下尼,Nginx给我们提供了一个官方模块,叫autoindex,我们来看下autoindex的功能 http://ngin
阅读全文
摘要:重启nginx服务 进入nginx安装目录sbin下,输入命令:./nginx -s reload 帮助 -?或 -h 使用指定的配置文件 默认情况下 我们编译出来的nginx会去寻找我们执行configur时指定的那个位置的配置文件;但是在命令行中 我们可以人为的指定另一个不同的配置文件,这个时候
阅读全文
摘要:Nginx的二进制文件中已经指定了它包含了哪些模块 但每一个模块都会提供独一无二的配置语法 这些配置的所有语法都会遵循同样的语法规则
阅读全文
摘要:一:安装Nginx有两种方式 (1) :手动编译安装 (2) :使用操作系统的工具比如yum和apt-get 但是第二种方式存在一些问题,Nginx的二进制文件会把模块直接编译进来的,Nginx的官方模块并不是每个都会开启的,如果想要添加第三方的Nginx模块,必须通过编译Nginx才能把Nginx
阅读全文
摘要:每发布一个版本会有三个特性: 第一:feature 新增了哪些功能 第二:bugfix 修复了哪些bug 第三:change 做了哪些小的重构
阅读全文

浙公网安备 33010602011771号