• Nginx学习


    Nginx学习

    nginx的基本概念

    1. nginx是什么?做什么事情?

    Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,特点是占用内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验。

    1. 反向代理

    (1)正向代理:在客户端(浏览器)配置代理服务器,通过代理服务器进行互联网的访问。
    在这里插入图片描述
    (2)反向代理:我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器ip地址。
    在这里插入图片描述

    1. 负载均衡

    单个服务器解决不了,我们增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡。
    在这里插入图片描述

    1. 动静分离

    为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度。降低原来单个服务器的压力。
    在这里插入图片描述

    nginx安装、常用命令和配置文件

    1. 在linux系统中安装nginx
      在这里插入图片描述

    2. nginx常用命令

    使用nginx操作命令前提条件:必须进入nginx的目录 /usr/local/nginx/sbin/

    • 查看nginx版本号
    ./nginx -v
    
    • 1
    • 启动nginx、关闭nginx
    //查看当前nginx状态
    ps -ef | grep nginx
    //关闭nginx
    ./nginx -s stop
    //启动nginx
    ./nginx
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 重新加载nginx
    ./nginx -s reload
    
    • 1
    1. nginx配置文件

    位置:/usr/local/nginx/conf/nginx.conf
    配置文件组成:
    第一部分 全局块
    从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令
    比如:worker_processes auto;//worker_processes值越大,可以支持的并发处理量也越多。
    第二部分 events块
    events块涉及的指令主要影响nginx服务器与用户的网络连接
    比如:worker_connections 10240;//支持的最大连接数
    第三部分 http块
    nginx服务器配置中最频繁的部分
    http块也可以包括http全局块、server块

    nginx配置实例 1-反向代理

    实现效果:打开浏览器,在浏览器地址栏输入地址 www.123.com,跳转linux系统tomcat主页面。
    访问过程分析:
    在这里插入图片描述
    在nginx进行请求转发的配置(反向代理配置)
    在这里插入图片描述
    在这里插入图片描述

    nginx配置实例 2-负载均衡

    实现效果:浏览器地址栏输入地址 192.168.17.129/edu/a.html ,负载均衡效果,平均8080和8081端口中。

    在这里插入图片描述

    nginx配置实例 3-动静结合

    在这里插入图片描述

    nginx高可用

    在这里插入图片描述

    nginx原理

    1. master和worker
      在这里插入图片描述
    2. woker如何进行工作
      在这里插入图片描述
    3. 一个master和多个woker有好处
      (1)可以使用nginx -s reload 热部署,利于nginx进行热部署操作
      (2)每个woker是独立的进程,其中一个出问题,不影响其它woker争抢
    4. 设置多少个worker合适
      worker数和服务器的cpu数相等是最为适宜的
    5. 连接数 worker_connection
      (1)发送请求,占用了woker的几个连接数?2或者4
      在这里插入图片描述

    (2)nginx有一个master,4个worker,每个worker支持最大的连接数据1024,支持的最大并发数是多少?
    普通的静态访问最大并发数是:worker_connectionworker_processes/2;
    而如果是http作为反向代理来说,最大并发数量应该是worker_connections
    worker_processes/4;

  • 相关阅读:
    全网最全Python图算法
    【FAQ】安防监控视频云存储平台EasyNVR对接EasyNVS时,一直不上线该如何解决?
    介绍 SafeCoder 解决方案服务
    Matlab论文插图绘制模板第111期—带线标记的图
    nginx优先级、规则及重定向
    js如何遍历对象的key和value
    Ubuntu修改下载源
    【Leetcode刷题Python】剑指 Offer 11. 旋转数组的最小数字
    史上最全,最详细SQL基础
    如何在github上面找到想要的sdk以及Python使用Etcd集群基础教程
  • 原文地址:https://blog.csdn.net/qq_42906423/article/details/127714657