nginx介绍、快速了解Nginx的各个特性

  • nginx是什么:
    • 世界最大的web服务器软件以高并发、低消耗著称,源自于俄罗斯,创建者Tgor(伊戈尔),2004年开源,最早以代理服务器的身份出现,2015年成立nginx公司,在2019年被F5 Networks公司收购
    • nginx是一个具有高性能的HTTP和反向代理的WEB服务器。
  • WEB服务器:
    • 也叫做网页服务器,英文名叫Web Server,主要功能是为用户提供网上信息浏览服务
  • HTTP协议:
    • HTTP是超文本传输协议的缩写,是用于从WEB服务器传输超文本到本地浏览器的传输协议,也是互联网上应用最广泛的一种网络协议
  • 反向代理:
    • 反向代理是一种代理服务器的配置模式,它代表服务器向客户端提供服务,客户端发送请求到反向代理服务器,然后反向代理服务器将用户发送的请求分布到后端的真实服务器来处理,处理完后再响应给客户端。
    • nginx在实现反向代理时,需要有一个负载均衡设备(即反向代理服务器)来分布用户的请求。
    • nginx介绍、快速了解Nginx的各个特性_第1张图片

  • nginx支持的几种负载均衡算法:
    • 1.轮询 RR(默认)
      • 按照循序依次分布每一个用户发来的请求到后端的web节点
    • 2.加权轮询WRR
      • 根据每一个web节点的web权重值来分配请求,权重值越高,被分配的次数越多,这种情况一般用在后端节点服务器性能不同时,使用加权轮询,这样的好处是,可以将性能高的服务器多处理一些请求。
    • 3.哈希算法(ip_hash)
      • 随机分配
    • 4.最少连接数(Least_conn简称LC)
      • 对后端服务器中的连接情况,优先选择连接数少的服务器分配
    • 5.最小响应时间(least_time)
      • 最小响应时间,计算节点平均响应时间,然后取响应最快的那个,分配最高权重
  • nginx的优缺点:
    • 优点:
      • 工作在七层之上,针对http做分流策略,正规则Hhaproxy更灵活
      • 对网络的稳定性依赖小
      • 安装配置简单
      • 高负载高并发低消耗
      • 不仅能做代理,还可以做web服务器
      • 还能缓存静态网页和图片
      • 社区活跃,第三方模块非常多
    • 缺点:
      • 适应范围较小,仅能支持http、https、Email协议。
      • 对后端服务器的健康检查,只支持通过端口检测,不支持url来检测
  • nginx的基础特性:
    • 模块化设计,较好的扩展性
    • 高可靠性
    • 支持热部署,不停机更新配置文件,升级版本,更换日志
    • 低内存消耗,10000个keep-alive下的非活动连接,仅需2.5M内存
    • event-driven(事件驱动),aio(异步非阻塞),mmap(内存映射),sendfile(代理转发)
  • nginx进程结构:**
    • Master/Worker 结构:一个 master 进程,生成一个或多个 worker 进程。
    • master:(管理者)
      • 读取nginx配置文件,验证有效性和正确性
      • 建立、绑定和关闭socket连接(它是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。)
      • 接受外界指令,比如重启、开、关服务
      • 不中断服务,平滑升级
      • 处理perl脚本
      • socket 安全套接字:进程通信使用的接口
    • worker:(工作者:处理用户的请求,返回结果)
      • 接受处理客户的请求(按模块区分)
      • I/O调用
      • 与后端服务器通信
      • 缓存数据
      • 发送请求结果
      • 接受主程序的指令

你可能感兴趣的:(nginx,运维,linux)