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

nginx的负载均衡

nginx的负载均衡

文章目录

    • nginx的负载均衡
      • 1.以多台虚拟机作服务器
        • 1.1 在不同的虚拟机上安装httpd服务
        • 1.2 在不同虚拟机所构建的服务端的默认路径下创建不同标识的文件
        • 1.3 使用windows本机的浏览器分别访问3台服务器的地址
      • 2.在新的一台虚拟机上配置nginx实现反向代理以及负载均衡
        • 2.1 安装配置nginx
        • 2.2 在所安装nginx的虚拟机上配置nginx的反向代理及负载均衡
        • 2.3 在浏览器上测试代理网站访问情况
        • 2.4 修改所代理服务器的权重来实现不同服务器的访问次数

1.以多台虚拟机作服务器

1.1 在不同的虚拟机上安装httpd服务

我这里采用3台虚拟机分别建立3台服务器:192.168.32.137、192.168.32.138、192.168.32.147。

在3台虚拟机服务器上安装httpd服务

#使用yum安装httpd服务
[root@node0-8 /]# yum install httpd -y#开启httpd服务
[root@node0-8 /]# systemctl start httpd
[root@node0-8 /]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Drop-In: /usr/lib/systemd/system/httpd.service.d└─php-fpm.confActive: active (running) since Mon 2022-12-05 23:34:13 CST; 8 months 7 days ago

1.2 在不同虚拟机所构建的服务端的默认路径下创建不同标识的文件

#查看httpd的配置文件所指向的网站主页文件路径
[root@node0-8 /]# vim /etc/httpd/conf/httpd.conf
</Directory># Further relax access to the default document root:
<Directory "/var/www/html">#在/var/www/html路径下创建index.html文件,文件内容标识不同的服务器端
#在虚拟机137上创建
[root@server79 /]# vim /var/www/html/index.html
这是主机137
#在虚拟机138上创建
[root@node0-8 /]# vim /var/www/html/index.html
这是主机138
#在虚拟机147上创建
[root@node1-79 /]# vim /var/www/html/index.html
这是主机147

1.3 使用windows本机的浏览器分别访问3台服务器的地址

注意:访问前需要关闭3台建立服务器的虚拟机的防火墙,或者写上防火墙策略

#关闭服务器主机的防火墙
[root@node1-79 /]# systemctl stop firewalld
[root@node1-79 /]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)Active: inactive (dead)Docs: man:firewalld(1)

使用windows主机的浏览器分别访问

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.在新的一台虚拟机上配置nginx实现反向代理以及负载均衡

2.1 安装配置nginx

这里我已经提前安装配置好了,具体安装配置过程可以查看我的上一篇博客。

2.2 在所安装nginx的虚拟机上配置nginx的反向代理及负载均衡

进入nginx的配置文件,我这里nginx的配置文件所在的路径有所不同。

#查看nginx所有配置文件的路径
[root@localhost ~]# nginx -V#在添加所要代理的服务器前先测试与服务器之间是否信息互联
[root@localhost /]# ping 192.168.32.137
PING 192.168.32.137 (192.168.32.137) 56(84) bytes of data.
64 bytes from 192.168.32.137: icmp_seq=1 ttl=64 time=0.553 ms#修改nginx的配置文件配置服务器代理
#在nginx的nginx.conf文件中添加以下内容
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
#在http模块中插入upstream servers {                          #upstream XXX(自定义命名)server 192.168.32.137;              #server 后面的地址为被代理的服务器的地址server 192.168.32.138;server 192.168.32.147;}
#在同一http模块下的server中的location修改为以下内容
location / {                              #/后面自定义命名路径名proxy_pass http://servers;      #这里的//后面的XXX必须与上端的upstream后面的相同}#配置修改完毕后重加载nginx配置
[root@localhost sbin]# ./nginx -s reload#关闭防火墙
[root@localhost sbin]# systemctl stop firewalld
[root@localhost sbin]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)Active: inactive (dead) since Tue 2023-08-08 15:08:34 CST; 5 days agoDocs: man:firewalld(1)

在这里插入图片描述

2.3 在浏览器上测试代理网站访问情况

通过windows主机的浏览器进行访问,当然可以修改本地的C:\Windows\System32\drivers\etc\hosts文件通过域名映射来访问

在这里插入图片描述

在这里插入图片描述

2.4 修改所代理服务器的权重来实现不同服务器的访问次数

#在原本的代理地址后面加上权重
[root@localhost sbin]# vim /usr/local/nginx/conf/nginx.confupstream servers {server 192.168.32.137 weight=1;server 192.168.32.138 weight=5;server 192.168.32.147 weight=2;}#重新加载nginx的配置
[root@localhost sbin]# ./nginx -s reload

在这里插入图片描述

可以看出,权重分配不同,所访问服务器的次数不同,权重大的,访问的次数多。

相关文章:

nginx的负载均衡

nginx的负载均衡 文章目录 nginx的负载均衡1.以多台虚拟机作服务器1.1 在不同的虚拟机上安装httpd服务1.2 在不同虚拟机所构建的服务端的默认路径下创建不同标识的文件1.3 使用windows本机的浏览器分别访问3台服务器的地址 2.在新的一台虚拟机上配置nginx实现反向代理以及负载均…...

linux系统服务学习(四)Linux系统下数据同步服务RSYNC

文章目录 Linux系统下数据同步服务RSYNC一、RSYNC概述1、什么是rsyncrsync的好姐妹数据同步过程 2、rsync特点3、rsync与scp的区别 二、RSYNC的使用1、基本语法2、本地文件同步3、远程文件同步思考&#xff1a;4、rsync作为系统服务Linux系统服务的思路&#xff1a; 三、任务解…...

走进 Linux

一、开关机 开机&#xff1a; 开机会启动许多程序。他们在windows叫做“服务”(service),在Linux就叫做“守护进程”&#xff08;daemon&#xff09;开机成功后&#xff0c;它会显示一个文本登录界面&#xff0c; 这个界面就是我们经常看到的登录界面&#xff0c;在这个登录界…...

Docker高级——Docker Swarm集群和部署应用

创建 Swarm 集群 初始化管理节点 [rootk8s-master ~]# docker swarm init --advertise-addr 192.168.192.133 Swarm initialized: current node (vy95txqo3pglh478e4qew1h28) is now a manager.To add a worker to this swarm, run the following command:docker swarm join …...

【SA8295P 源码分析】74 - QNX secpol 安全策略文件配置详解 及 secpol.bin 编译过程分析

【SA8295P 源码分析】74 - QNX secpol 安全策略文件配置详解 及 secpol.bin 编译过程分析 一、secpol 的编译流程:编译生成 secpol.bin 打包在 ifs2_la.img 中二、QNX 开启 secpol 功能三、为新进程 创建 新的secpol 安全策略:以 vmm_service 为例四、secpol 配置示例,以 I2…...

Docker入门使用

用一个hello world的小例子来入门docker 在 Docker 容器中部署 Python Flask 的简单 Hello World 项目&#xff0c;需要遵循以下流程&#xff1a; 编写应用程序 首先&#xff0c;在本地计算机上编写一个简单的 PythonFlask 应用程序&#xff0c;例如&#xff1a; # hello.…...

在SAP上使用 LiquidUI Android 扫描条形码/QR 码

LiquidUI Android 可使用安卓移动设备的内置摄像头扫描条形码和二维码&#xff0c;为输入框填充数值。因此&#xff0c;无需附加任何第三方设备进行扫描。 LiquidUI Android 还提供了扫描功能&#xff0c;如 Accessible-Enter&#xff08;俗称自动输入&#xff09;和 Accessib…...

Maven - 全面解析 Maven BOM (Bill of Materials):打造高效依赖管理与模块化开发

文章目录 Whats BOMWhy Bom常見的官方BOMSpring Maven BOM dependencySpringBoot SpringCloud Maven BOM dependencyJBOSS Maven BOM dependencyRESTEasy Maven BOM dependencyJersey Maven BOM dependency How Bom定义BOM其他工程使用的方法 BOM VS POM What’s BOM BOM&…...

Lua脚本对比redis事务区别是什么

redis官方对于lua脚本的解释&#xff1a;Redis使用同一个Lua解释器来执行所有命令&#xff0c;同时&#xff0c;Redis保证以一种原子性的方式来执行脚本&#xff1a;当lua脚本在执行的时候&#xff0c;不会有其他脚本和命令同时执行&#xff0c;这种语义类似于 MULTI/EXEC。从别…...

ES安装问题汇总

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] 问题描述 ES启动报错。其原因是ES需要的的最小max file descriptors为65535&#xff0c;我们设置的是4096&#xff0c;需要增大max file descriptors的值。 解决方案 调大…...

煜邦转债,华设转债,兴瑞转债,神通转债上市价格预测

煜邦转债 基本信息 转债名称&#xff1a;煜邦转债&#xff0c;评级&#xff1a;A&#xff0c;发行规模&#xff1a;4.10806亿元。 正股名称&#xff1a;煜邦电力&#xff0c;今日收盘价&#xff1a;8.82元&#xff0c;转股价格&#xff1a;10.12元。 当前转股价值 转债面值 / …...

R语言生存分析算法的简单组合

library(survival) library(randomForestSRC)# 生成模拟数据 set.seed(123) n <- 200 time <- rexp(n, rate 0.1) status <- rbinom(n, size 1, prob 0.7) var1 <- rnorm(n) var2 <- rnorm(n) var3 <- rnorm(n) data1 <- data.frame(time time, statu…...

Qt应用开发(基础篇)——滚屏区域基类 QAbstractScrollArea

一、前言 QAbstractScrollArea滚屏区域抽象类继承于QFrame&#xff0c;QFrame继承于QWidget&#xff0c;是QListview(列表浏览器)、QTableview(表格浏览器)、QTextEdit(文本编辑器)、QTextBrowser(文本浏览器)等所有需要滚屏区域部件的抽象基类。 框架类QFrame介绍 QAbstractSc…...

HTTPS安全通信

HTTPS,TLS/SSL Hyper Text Transfer Protocol over Secure Socket Layer,安全的超文本传输协议,网景公式设计了SSL(Secure Sockets Layer)协议用于对Http协议传输的数据进行加密,保证会话过程中的安全性。 使用TCP端口默认为443 TLS:(Transport Layer Security,传输层…...

C语言暑假刷题冲刺篇——day1

目录 一、选择题 二、编程题 &#x1f388;个人主页&#xff1a;库库的里昂 &#x1f390;CSDN新晋作者 &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏✨收录专栏&#xff1a;C语言每日一练 ✨其他专栏&#xff1a;代码小游戏C语言初阶&#x1f91d;希望作者的文章能对你…...

trollcave靶场

配置 第一步&#xff1a;启动靶机时按下 shift 键&#xff0c; 进入以下界面 第二步&#xff1a;选择第二个选项&#xff0c;然后按下 e 键&#xff0c;进入编辑界面 将这里的ro修改为rw single init/bin/bash&#xff0c;然后按ctrlx&#xff0c;进入一个相当于控制台的界面…...

反馈式编译

一、 反馈式编译 简介 PGO&#xff0c;即Profile-Guided Optimizations&#xff0c;反馈式优化。PGO是编译器的又一优化技术&#xff0c;PGO与其它的一些优化技术/选项有一个明显的区别是&#xff1a;PGO优化是分三步完成的&#xff0c;是一个动态的优化过程。 反馈优化过…...

sql-libs靶场-----0x00、环境准备

文章目录 一、PhPstudy下载、安装二、Sqli-libs下载、搭建三、启用Sqli-libs phpstudy地址&#xff1a;https://www.xp.cn/ sqli-libs地址&#xff1a;https://github.com/Audi-1/sqli-labs 一、PhPstudy下载、安装 1、下载–解压–安装&#xff0c;安装完成如下图 2、更换php…...

一百四十九、Kettle——Linux上安装的kettle8.2创建共享资源库时遇到的问题(持续更新中)

一、目的 在kettle8.2在Linux上安装好可以启动界面、并且可以连接MySQL、Hive、ClickHouse等数据库后开始创建共享资源库&#xff0c;但是遇到了一些问题 二、Linux系统以及kettle版本 &#xff08;一&#xff09;Linux&#xff1a;CentOS 7 英文的图形化界面模式 &#…...

Mysql 建索引规范

索引规范 今天在建线上表的时候&#xff0c;做了一个varchar的索引&#xff0c;运维说varchar的索引会占用很大的内存。 于是 上网搜了一下建索引规范 一、建表规约 【强制】&#xff08;1&#xff09; 存储引擎必须使用InnoDB 解读&#xff1a;InnoDB支持事物、行级锁、并发…...

摒弃传统持卡定位弊端 全方位筑牢井下应急安全屏障

摒弃传统持卡定位弊端 全方位筑牢井下应急安全屏障井下人员定位是矿山安全生产、应急救援、风险管控的核心基础支撑&#xff0c;直接关乎井下作业人员生命安全与矿山安全生产大局。长期以来&#xff0c;传统井下持卡定位模式凭借基础管控作用被广泛应用&#xff0c;但在深井开采…...

数据决定上限,准备决定成败:DeepSeek同源训练数据预处理全链路拆解,错过这3个关键阈值=白训2000卡时

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;数据决定上限&#xff0c;准备决定成败&#xff1a;DeepSeek同源训练数据预处理全链路总览 高质量大模型的基石并非仅在于参数规模或算力堆叠&#xff0c;而深植于训练数据的纯净度、多样性与结构化程度。De…...

电脑里突然冒出的FNPLicensingService.exe是啥?手把手教你关闭它(附Adobe/CAD/Xshell等软件排查指南)

电脑里突然冒出的FNPLicensingService.exe是啥&#xff1f;手把手教你关闭它&#xff08;附Adobe/CAD/Xshell等软件排查指南&#xff09;当你打开任务管理器&#xff0c;突然发现一个陌生的进程FNPLicensingService.exe在后台运行&#xff0c;甚至频繁请求联网&#xff0c;这难…...

20年AI平台建设者私藏清单:5款“伪开源”商业工具 vs 3款真正企业级开源AI引擎——性能、支持、审计三重穿透测评

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;20年AI平台建设者私藏清单&#xff1a;5款“伪开源”商业工具 vs 3款真正企业级开源AI引擎——性能、支持、审计三重穿透测评 在构建高可用AI基础设施的二十年实践中&#xff0c;我们反复验证一个残酷事实&am…...

Node.js 项目如何集成 Taotoken 实现稳定的大模型调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Node.js 项目如何集成 Taotoken 实现稳定的大模型调用 对于 Node.js 后端服务开发者而言&#xff0c;在项目中引入大模型能力正变得…...

【肾结石检测】图像处理技术检测超声图像中的肾结石【含Matlab源码 15553期】含报告

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;Matlab领域博客之家&#x1f49e;&…...

DeepSeek多租户资源隔离:5大核心机制+3个避坑指南,立即提升SLA至99.99%

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;DeepSeek多租户资源隔离的架构演进与核心挑战 DeepSeek在支撑大规模AI模型训练与推理服务的过程中&#xff0c;逐步从单租户单集群模式演进为支持数千租户共享基础设施的多租户平台。这一演进并非简单叠加命名…...

[简化版 GAMES 101] 计算机图形学 10:反走样与深度缓冲核心解析

[简化版 GAMES 101] 计算机图形学 10&#xff1a;反走样与深度缓冲核心解析Bilibili 同步视频&#x1f4dd; 课前小记&#xff1a;作业与学习指南&#x1f504; 上节回顾&#xff1a;光栅化的本质&#x1f9e9; 采样理论&#xff1a;走样从何而来&#xff1f;✂️ 反走样&#…...

3分钟搞定:终极免费DeepL Chrome翻译插件安装指南

3分钟搞定&#xff1a;终极免费DeepL Chrome翻译插件安装指南 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension 还在为浏览外文网页而烦恼吗&#xff1f;想要获得专业…...

m4s-converter:让B站缓存视频重获新生的终极解决方案

m4s-converter&#xff1a;让B站缓存视频重获新生的终极解决方案 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾遇到过这样的情况&…...