码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Nginx的操作


    目录

               一、什么是nginx。

            二、为什么学习nginx

            三、安装Nginx

            3.1 安装nginx需要的依赖

            3.2 下载nginx并解压

            3.3 创建一个目录--作为nginx的安装目录

            3.4 进入nginx的解压目录--来指定nginx的安装目录

            3.5 编译源码和安装         

            3.6 启动nginx

            四、讲解配置文件--Nginx.conf

            五、Nginx核心功能---反向代理

            5.1 : 反向代理和正向代理的区别

            六、负载均衡

            6.2 nginx负载均衡的策略

            七、动静分离

            八、nginx的高可用

           8.1 如何来搭建nginx的高可用

            8.2 测试主节点宕机


            一、什么是nginx。

                 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器 , 其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。 Nginx代码完全用C语言从头写成 . 能够支持高达 50,000 个并发连接数的响应. 现在国内很多大型企业都在使用ngnix作为反向代理服务器。比如: 阿里,新浪,腾讯,京东。    

            二、为什么学习nginx

            

                            代理真实的应用服务器。安全。

            三、安装Nginx

            3.1 安装nginx需要的依赖

            1. yum install -y gcc-c++
            2. yum install -y pcre pcre-devel
            3. yum install -y zlib zlib-devel
            4. yum install -y openssl openssl-devel

            3.2 下载nginx并解压

                    nginx: download

            上面的解压目录---只是nginx的源码。  

            3.3 创建一个目录--作为nginx的安装目录

                    mkdir /usr/nginx

            3.4 进入nginx的解压目录--来指定nginx的安装目录

            3.5 编译源码和安装         

             make ----编译
             make install ----安装

                    nginx安装成功。

            3.6 启动nginx

            ./nginx 开启nginx

            ./nginx -s stop 关闭nginx

            ./nginx -s reload 重新加载配置文件

            如何查看nginx是否启动成功。                 

            通过浏览器访问nginx代理服务

     

                    80防火墙是否放行改端口号        我把防火墙关闭了

            四、讲解配置文件--Nginx.conf

            五、Nginx核心功能---反向代理

            5.1 : 反向代理和正向代理的区别

            正向代理: 该服务代理的是客户端,对应服务器来说不知道真实的客户地址。比如翻墙软件

            反向代理:改服务代理的是应用服务器,对应客户来说不知道真实访问的是那台服务器。 比如:nginx

                    nginx如何实现反向代理  

        

    准备:

    项目

    159---部署项目

    158---安装nginx                159服务器运行你的项目

            158修改nginx的配置让其代理真实服务器

            重新加载nginx配置文件                          ./nginx -s reload

            客户端访问

            六、负载均衡

                            把客户的大量请求,均摊到相应的服务器,以减少单个服务器的压力。 

            需要准备:

    ngnix:-----192.168.223.158

    tomcat服务器两台:----192.168.223.159 192.168.223.160 为了能够看到负载均衡的效果,我们这里故意让这两台服务器的内容不同。

            (1)分别在159和160这两台服务器上运行tomcat服务器。  

            

            (2)修改nginx配置文件

            (3)nginx重新加载配置文件         

                    /usr/nginx/sbin/nginx -s reload

            (4)测试

            

            可以看到把请求均摊159和160两台机器上了。而且默认使用的负载均衡策略为轮询。 

            6.2 nginx负载均衡的策略

                    轮询:默认的策略

                    权重: 根据服务器的配置不同,分配不同的权重值。值越大被访问的频率越高。

                    ip哈希: 根据访问者的ip,固定访问某个服务器。         

                    使用插件: 自定义策略。

            注意: 上面的策略只能使用一个。

            七、动静分离

                    

                    为了减少真实服务器的压力, 方便维护静态资源。

            修改nginx的配置

                    访问nginx---  

            八、nginx的高可用

           8.1 如何来搭建nginx的高可用

            (1)需要准备两台虚拟机:

            192.168.223.158====MASTER主节点

            192.168.223.159====BACKUP从节点

    (2)在158和159安装keepalived

                                                                      yum install keepalived

                    默认keepalived的配置文件/etc/keepalived下

            (3) 修改配置文件  

     (4)把检查nginx脚本放入到指定目录下 /usr/local/src

            

            (5)158和159开启keepalived和nginx  

                                    systemctl start keepalived.service

     

            8.2 测试主节点宕机

    ./nginx -s stop

    systemctl stop keepalived.service

            把158的节点关闭 就会自动跳到了159

             

                                     如果主节点恢复,则继续主节点工作

  • 相关阅读:
    uniapp开发断小程序-如何判断小程序是在手机端还是pc端打开
    JavaWeb核心、综合案例(详细!Web开发流程)
    如何开发一个 Safari 插件
    《基于 Vue 组件库 的 Webpack5 配置》9.module.exports 可为数组类型且注意编译顺序
    【ES6知识】async 函数与代码优雅写法
    phantomjs插件---实现通过链接生成网页截图
    Wait-Notify机制
    Apache Airflow (十一) :HiveOperator及调度HQL
    Transforms的使用2(ToTensor类)
    Azure 开发者新闻快讯丨开发者6月大事记一览
  • 原文地址:https://blog.csdn.net/wk3510/article/details/128100606
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号