当前位置: 首页 > article >正文

windows系统下Nginx负载均衡实战总结

1.下载Nginx

下载Nginx这里不多做赘述,找到官网,下载稳定版的Nginx即可。这里使用的版本是nginx-1.26.2(稳定版本:Stable version)

官网下载地址:nginx: download

2.创建三个js文件

这里使用的是node.js来创建三个简单的Javascript文件,只需要进行基本的访问,把返回值回显到网站上即可。在c盘简单创建了一个文件夹,里面包含三个名为server1、server2、server3的文件。

其中里面的代码具体为

const http = require('http');
const server = http.createServer((req, res) => {
    res.writeHead(200);
    res.end('Service 1成功进行返回\n');
});
server.listen(5001);

创建成功后,打开使用cmd打开Windows 的命令提示符窗口,对刚刚创建的三个文件进行编译,来模拟后端的请求端口(也可以本地更改项目的端口号,进行编译jar包,编译命令为java -jar your-application.jar),具体的实现为:node 你的文件名.js。启动成功后会弹出一个node.js的窗口。没有弹出的话,也可以通过netstat -ano | findstr :端口号查看是否成功开启。依次将所有的文件全部进行编译,5001,5002,5003端口全部启动成功。

3.更改Nginx的系统配置

当端口启动成功之后,需要更改nginx的系统配置,找到conf文件夹下,nginx.conf进行编辑修改

具体修改在http模块下进行修改

 upstream backend {

        #设置请求链接,weight为权重,其值越高,优先访问

        server localhost:5001 weight=1;  # 服务1

        server localhost:5002 weight=5;  # 服务2

        server localhost:5003 weight=1;  # 服务3

    }

server模块代码:

 server {

        #默认监听80端口,会通过80端口访问其他请求

        listen       80;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

   #具体请求设置location模块,请求路径以 /jeecg-boot/ 开头时,Nginx 将使用该块的配置来处理请求。

 location /jeecg-boot/ {

    proxy_pass http://backend;

    proxy_set_header Host $host;#保留主机头

    proxy_set_header X-Real-IP $remote_addr;#识别真实的客户端ip

    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#记录上方请求成功的ip地址

    proxy_set_header X-Forwarded-Proto $scheme;#判断是通过何种协议发起的

}

        #error_page  404              /404.html;


 

        # redirect server error pages to the static page /50x.html

        #错误时返回页面,为nginx自带的

       error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

      }

}

以上配置更改完成后,启动Nginx(建议以管理员身份运行),访问http://localhost即可随机进入一个端口。

4.进行测试

访问http://localhost即可随机进入一个端口,可以设置权重的值,来提高某个端口的访问效率。


http://www.kler.cn/news/341131.html

相关文章:

  • SQL优化 where谓词条件OR优化
  • Android开发视频预览效果
  • 强制删除了windows自带的edge浏览器,重装不了怎么办【已解决】
  • 机器学习笔记(四)-决策树
  • 斯坦福UE4 C++课学习补充25:AI感知组件
  • 51单片机-第十四节-AD/DA(XPT2046触摸屏)
  • 【学术会议征稿】2024年信号处理与神经网络应用国际学术会议(SPNNA 2024)
  • OpenCVSharp使用MeanShift图像分割详解
  • 【STM32-HAL库】实现微秒、毫秒、纳秒延时。(STM32F4系列)(附带工程下载链接)
  • 贪心算法:原理、应用与优化
  • Python OpenCV精讲系列 - 实例分割深入理解(十八)
  • 【devops】x-ui 实现一键安装 x-ray 打造高速国际冲浪 | xray管理平台
  • C# 类型增加自定义xml序列化
  • 【gRPC】1—gRPC是什么
  • Python中的with关键字和文件操作
  • Linux SSH服务
  • C语言练习
  • 【AAOS】Android Automotive 10模拟器源码下载及编译
  • Springboot 阿里云对象存储OSS 工具类
  • 69. Three.js背景透明度