nginx7层负载均衡与4层负载均衡

2023-10-27

OSI7层模型


第一层:物理层			对应硬件设置:负载均衡中F5 readware	
第二层:数据链路层		例:lvs的dr模型中修改mac地址
第三层:网络层			例:ip,icmp
第四层:传输层			例:tcp、udp(个人浅见,lvs本身只做流量分发,本身无流量)
第五层:会话层			例:DNS、smtp
第六层:表示层			例:telnet、snmp(zabbix网页监控中使用了该协议)
第七层:应用层			例:nfs、ftp、tftp、http等

4层负载均衡

nginx4层对应传输层,只做分发请求,但没有lvs稳定,由于经常性的人为修改,可能会有误操作

lvs配置简单,配置完成后不需要过多的人为干预

比较典型的例子就是在对nginx做动静分离,实际应答内容由主机2的httpd回应。

环境:2台主机,主机1部署nginx,主机2部署httpd和php,在/var/www/html/创建index.html和index.php

curl www.baidu.com > /var/www/html/index.html
vim /var/www/html/index.php

<?php
phpinfo();
?>
location ~ \.html$ {
proxy_pass http://主机2ip;
}
location ~ \.php$ {
proxy_pass http://主机2ip;
}

 nginx7层负载均衡对应OSI的应用层,是典型的SLB

在7层负载均衡由于定义在应用层,做的负载均衡更加偏向于服务,7层负载均衡没有4层效率高。

该部分主要用于的是upstream部分定义的服务器池,在下面的location中调用可直接输入域名。

第一部分:nginx81端口,nginx正向代理

第二部分:7层负载均衡副武器池,使用三个tomcat

第三部分:默认的80端口访问192.168.31.11下的httpd的index.html资源

第四部分:index.php结尾访问192.168.31.11下的php资源

详见负载均衡实现方式

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx7层负载均衡与4层负载均衡 的相关文章

  • 在 Linux 上使用命令行 PHP 检查互联网连接

    我在 Linux 上使用命令行 PHP 来打开蓝牙拨号连接 并且我需要一种快速的方法来检查互联网连接是否处于活动状态 嗯 不一定要脏 但要快 使用exec运行外部命令不是问题 我正在考虑 ping 一些稳定的服务器 例如谷歌 但我想知道是否
  • 如何在ubuntu下使用nasm(汇编)从键盘读取单个字符输入?

    我在ubuntu下使用nasm 顺便说一句 我需要从用户的键盘获取单个输入字符 就像当程序询问您 y n 时 因此当按下按键并且不按 Enter 键时 我需要读取输入的字符 我用谷歌搜索了很多 但我发现的所有内容都与这条线有关 int 21
  • Windows 上的 DLL Main 与 Windows 上的 DLL Main Linux 上的 __attribute__((constructor)) 入口点

    考虑代码 EXE int main printf Executable Main loading library n ifdef HAVE WINDOWS HMODULE lib LoadLibraryA testdll dll elif
  • 监控(嗅探)由 FTDI USB 串行转换器创建的 /dev/ttyUSB0

    我想监视 嗅探 由 FTDI USB 串行转换器创建的 dev ttyUSB0 的流量 我已经在 Windows 中编写了自己的应用程序 现在我尝试将其移植到 Linux 并使用 dev tty USB0 我想调试实际发生的通信 软件 st
  • 如何在Linux下生成系统范围的唯一ID

    我正在使用多进程 Linux 系统 需要生成唯一的 ID 安全性不是考虑因素 因此 ID 生成器从零开始递增就可以了 而且它只是在本地计算机内 不涉及网络 显然 实现这一点并不难 但我只是想知道是否已经提供了任何东西 最好是轻量级的 这听起
  • Linux 在崩溃时自动重新启动应用程序 - 守护进程

    我有一个运行嵌入式 Linux 的系统 它的持续运行至关重要 基本上 它是一个与传感器通信并将数据中继到数据库和 Web 客户端的过程 如果发生崩溃 如何自动重启应用程序 此外 还有多个线程进行轮询 例如套接字和 uart 通信 如何确保没
  • 如果等于特定值则替换列

    我希望替换 CSV 中的第四列 如果它等于 N A 我正在尝试将其更改为 1 我似乎无法让它发挥作用 awk F if 4 N A 4 1 test csv 您可以使用以下内容awk awk F 4 4 N A 1 4 1 OFS test
  • 如何从子进程为父进程设置环境变量?

    如何从子进程为父进程设置环境变量 例如 我有父进程和子进程 子进程继承自父进程环境变量 TMP VARIABLE 777 如何将子进程中 TMP VARIABLE 的值更改为 999 使其值对父进程可见 因为 TMP VARIABLE 99
  • 何时调用setsockopt?在bind()和connect()之前?

    我继承了一些 TCP 代码 调用 bind tcpSocket struct sockaddr server addr sizeof server addr 在致电之前 setsockopt tcpSocket SOL SOCKET SO
  • Linux 上共享内存的生命周期是多长

    我正在使用 ftok shmget shmat shmdt 函数在 Linux 上创建 写入和读取共享段 如果我写入一个程序中的段 然后退出 然后稍后从另一个程序中读取该段 我会惊讶地发现数据仍然存在 我预计当共享一个段的最后一个进程执行
  • 如何使用c在Linux中获取当前时间戳(以纳秒为单位)

    我知道我们可以使用clock gettime CLOCK MONOTONIC 我尝试问的问题是 如果我需要以纳秒为单位的时间 从时代来看 这将是一个巨大的数字 例如 自纪元以来的秒数是13438461673 so 13438461673 1
  • C++向量数组运算符计算成本高?

    我一直都知道 C 的丰富抽象会带来一定的计算开销 但我的印象是 一旦应用了正确的编译器优化 这种开销几乎可以忽略不计 我很好奇这种开销到底有多大 所以我编写了一个简单的测试来确定这一点 该测试是一个模板化函数 它接受一个容器变量 为容器中的
  • 参数无效”设置键“net.core.somaxconn”

    我尝试设置Linux内核 编辑后 etc sysctl conf并执行sysctl p它显示错误 Invalid argument setting key net core somaxconn Linux 发行版 Ubuntu 12 04
  • python中的多服务器监控/自动重启

    我有 2 个服务器程序 必须使用 GNU Screen 启动 我想使用基于 Python 的程序来强化这些服务器 防止崩溃 该程序启动每个屏幕会话 然后监视服务器进程 如果服务器进程崩溃 我需要 python 代码来终止无关的屏幕会话并再次
  • c - 后台运行的程序的退出状态

    我有一个任务 其中我必须创建一个迷你 shell 它能够执行很多操作 包括作业控制 我设法使用 fork 和 execvp 创建新的工作 但我还想获取 execvp 运行的程序的退出代码 根据我从其他帖子中查找到的内容 我可以使用以下方法来
  • 如何在多行而不是单行输出上打印 Linux 组名称

    我尝试过 getent group 命令 id Gn user 和一些 sed 组合 但我认为我无法实现 因此向其他程序员伸出援手 我希望能够打印此 groups abc123输出 abc123 devops 构建测试设计 预期输出 gro
  • ulimit -r 返回不同的值

    我将以下两行添加到系统范围的 etc security limits conf 中 soft rtprio 55 hard rtprio 55 系统重新启动后 根据我在计算机上访问用户帐户的方式 我会得到两个不同的结果 user clien
  • top命令的CPU使用率计算

    我正在尝试使用 GNU coreutil top 的公式来计算 CPU 使用率的百分比 但 top 正在使用一些 half total 来计算百分比 即在百分比上添加 0 5 在top的utils c中 以下行 在 3 8 beta1 中
  • 无法声明接口:资源繁忙

    我正在使用 USB4Java 低级版本 并且基本上是根据这段代码工作的here http www mets blog com java usb communication usb4java 我在 Ubuntu 中工作 遇到了有关权限的问题
  • 在Linux上如何找到当前目录的所有直接子目录?

    在Linux上如何找到当前目录的所有直接子目录 最简单的方法是通过编写来利用 shell 通配功能echo 如果你喜欢使用ls 例如要应用格式 排序选项 请使其ls d 解释 斜杠确保仅考虑目录 而不考虑文件 Option d 列出目录本身

随机推荐

  • Kafka3.0.0版本——消费者(消费者组详细消费流程图解及消费者重要参数)

    目录 一 消费者组详细消费流程图解 二 消费者的重要参数 一 消费者组详细消费流程图解 创建一个消费者网络连接客户端 主要用于与kafka集群进行交互 如下图所示 调用sendFetches发送消费请求 如下图所示 1 Fetch min
  • [C++]宏定义字节对齐#PragmaPack/Pop

    Pragma Pack n 指定对齐的字节数 pragma pop pop 恢复对齐状态 默认4字节对齐 目录 什么是对齐 对齐规则 功能 应用 什么是对齐 现代计算机中内存空间都是按照byte划分的 从理论上讲似乎对任何类型的变量的访问可
  • RFID智能仓储管理系统,更加智能化的仓储管理,你选择对了吗-新导智能

    不同的企业规模 产品类别 有着不同的仓储办理流程和需求 但核心的部分 都还在于进出库在内的库房作业和移库 盘库在内的库存操控作业 而跟着整个出产制作环境的改变 产品周期越来越短 多样少数的出产办法开始兴起 来自商场端的需求对仓储办理提出了更
  • MySQL 中的数据类型介绍

    据我统计 MySQL支持39种 按可使用的类型字段统计 即同义词也作多个 数据类型 下面的介绍可能在非常古老的mysql版本中不适用 转载请注明出处 http blog csdn net anxpp article details 5128
  • CSS样式--被忽略的前端基础(一)

    CSS样式 被忽略的前端基础 一 前言 以前学后端觉得前端不屑一顾 easy 后来从事前端开发后觉得其实并不简单 尤其是在css这一块 总觉得简单 没怎么系统的学习 现在觉得语言只是一种处理和解决问题工具 而你对基础掌握的深度影响着你解决问
  • H5选择本地文件夹下图片上传到服务器,并在网页中显示

    文章目录 基本 变种 html5 缺点 还要选择 基本
  • 面对“失业焦虑”我们可以做些什么?

    前言 在回答这个问题之前 我想先稍微聊一下我国当下的就业形势 当下的就业形势 近几年的就业形势非常严峻 除了疫情方面的影响 我认为更重要的是下行的经济环境带来的坏处 这二者相互叠加 给社会造就了如今这么复杂的就业现状 一 毕业生人数与就业岗
  • shell脚本中getopts的使用

    在shell中 getopts用于解析命令选项和参数 getopts是Bash shell的内置命令 不支持长选项 仅解析短选项 即一个破折号 和一个字母或数字 如 1 e E等 getopts格式如下 getopts OptString
  • 文件数据块分块算法解析

    文件数据块分块算法解析 1 简介 存储系统的重复数据删除过程一般是这样的 首先将数据文件分割成一组数据块 为每个数据块计算指纹 然后以指纹为关键字进行Hash查找 匹配则表示该数据块为重复数据块 仅存储数据块索引号 否则则表示该数据块是一个
  • CyclicLR pytorch实现

    论文 https arxiv org abs 1506 01186 论文中给了keras版本 1 如何寻找最大和最小学习率 参考https github com davidtvs pytorch lr finder 安装 python3 5
  • 9.1.3 定点数类型

    9 1 3 定点数类型 MySQL中的定点数类型只有DECIMAL一种类型 DECIMAL类型也可以使用 M D 进行表示 其中 M被称为精度 是数据的总位数 D被称为标度 表示数据的小数部分所占的位数 定点数在MySQL内部是以字符串的形
  • idea和eclipse修改背景颜色

    idea和eclipse修改背景颜色 idea修改背景颜色 file gt settings gt Editor gt Color Scheme gt 选择Darcula 应用即可 eclipse修改背景颜色 Window Preferen
  • k8s中Deployment模板

    apiVersion apps v1 kind Deployment metadata labels app app api name app api spec replicas 1 pod副本数 selector matchLabels
  • C++ 基础相关 备忘

    一 decltype 获取类型 typeid a name int i 0 decltype i j 0 cout lt lt typeid j name lt lt endl 二 编译选项 as needed g std c 11 o e
  • 电脑进不了桌面_XP系统进不了桌面,Explorer错误

    客户一台老电脑 XP系统进不了桌面 出现Explorer错误 故障原因 iexplore exe文件损坏或者系统中exe病毒 核心原因是垃圾软件进程注入explorer 3个解决方法 1 下载exe病毒专杀工具保存到u盘里面 U盘引导进PE
  • C++命名空间与头文件的关系

    C 命名空间与头文件的关系 一 添加一个头文件demonamespace h 内容如下 ifndef DEMONAMESPACE H define DEMONAMESPACE H class A public int value names
  • 【QT 网络云盘客户端】——主窗口界面的设计

    目录 1 设计主窗口界面 2 设置窗口的背景图片 3 自定义标题栏 3 1 设置toolbutton按钮的图片 3 2 设置按钮的大小 3 3 将自定义标题栏添加设置到主页面中 3 4 去除窗口的原标题栏 3 5 设置按钮颜色 3 6 切换
  • Netty实战(十四)WebSocket协议(二)

    WebSocket协议 二 一 初始化 ChannelPipeline 二 引导 三 加密 一 初始化 ChannelPipeline 我们之前说过为了将 ChannelHandler 安装到 ChannelPipeline 中 需要扩展了
  • JAVA项目中的异步任务

    JAVA项目中的异步任务 使用异步任务 使用异步任务 Async Task 的主要目的是为了提高程序的响应速度和性能 异步任务允许程序在执行某些耗时操作时 不会阻塞主线程 从而使得主线程能够更快地响应用户的请求 提高用户体验 实际开发中业务
  • nginx7层负载均衡与4层负载均衡

    OSI7层模型 第一层 物理层 对应硬件设置 负载均衡中F5 readware 第二层 数据链路层 例 lvs的dr模型中修改mac地址 第三层 网络层 例 ip icmp 第四层 传输层 例 tcp udp 个人浅见 lvs本身只做流量分