SLB+nginx 负载均衡宕机模拟

本贴最后更新于 1541 天前,其中的信息可能已经渤澥桑田

上篇 Nginx 原理探究这篇文章主要探索了 ng 的几个核心点,分别是:1、反向代理 2、动静分离 3、负载均衡 4、跨域配置。今天主要探索下 ng 上的负载均衡,与其说是探索,不如说是进行一次实验(模拟服务宕机)。

首先,参考了《nginx 和阿里云的 SLB 的区别》和掘金上的一张负载架构图。

简单分析 ng 上的 SLB(负载均衡) 和阿里云 SLB 的区别

1、"Nginx 是一个有负载均衡 web 环境,阿里云 SLB 是一个单独的负载均衡系统"

2、如图分析,阿里云 SLB 更多的应用于服务器间的负载均衡,然后 ng 多应用于单一服务器间的相同应用的负载均衡(当然人家也能做服务器负载)。本质没有区别,都是做负载均衡的,但是阿里 SLB 偏应用于系统端,ng 偏应用于服务端。可以参考"[阿里云负载均衡 SLB 是什么,如何使用](https://www.vpsss.net/3474.html)"

TB2O4g6lVXXXXc6XXXXXXXXXXXX102975691.jpg

补一下 SLB 这个概念,百度百科:"服务器负载均衡(Server Load Balancing),可以看作 HSRP(热备份路由器协议)的扩展,实现多个服务器之间的负载均衡"。

阿里云 SLB 的实验是做不了了,我只有一台服务器,模拟一下 ng 的 SLB 吧。首先我先随便写两个 Web 项目(内容一样)先挂在服务器上。(写的是真的简单。。。)两个相同的项目,访问请求放回"hello NgSLB",分别用 7070、6060 端口启动。(用这个 makedown 上传图片不老好传的,6060 那个和 7070 图一样)

1.PNG

2.PNG

启动一下项目,监听端口。

4.PNG

浏览器都可以正常访问到了,然后在 ng 上配置一下反向代理和负载均衡。

5.jpg
图片.png一通转转转然后可以正常访问到接口。其实这里有个不直观的地应该是把两个项目输出值稍作修改的,不过模拟的是企业级接口,原理应该没问题。

然后我把 6060 端口项目关了,默认他宕了。

图片.png
服务还在,那么这时 ng 就只能去轮询 7070 的项目了

8.PNG

图片.png

现在把两个端口都停了,就都访问不到了。至此,ng 的负载均衡模拟一个服务宕掉后另一个能轮询到另一个正常访问的实验就成功了。

10.PNG

其实 ng 负载配置项还有很多别的指令这次都没有用到,比如 weight(权重)、down(暂时不参与负载)、backup(备机?)等等,以后再做研究吧。

ng 探索基本也就到这了,下午去帮同事看看 PUBLICCMS 这个开源系统的代码逻辑(他偏偏用 ssh,我大学学 ssm,现在用 jdbc、jpa。。。)

  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    315 引用 • 547 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    4 引用 • 7 回帖
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    7 引用 • 28 回帖 • 1 关注
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 686 关注
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    187 引用 • 3914 回帖
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    6 引用 • 143 回帖 • 1 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    302 引用 • 772 回帖
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    85 引用 • 324 回帖 • 1 关注
  • danl
    187 关注
  • SQLServer

    SQL Server 是由 [微软] 开发和推广的关系数据库管理系统(DBMS),它最初是由 微软、Sybase 和 Ashton-Tate 三家公司共同开发的,并于 1988 年推出了第一个 OS/2 版本。

    21 引用 • 31 回帖
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    76 引用 • 258 回帖 • 632 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 651 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    32 引用 • 100 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    415 引用 • 3601 回帖
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 259 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    53 引用 • 190 回帖 • 3 关注
  • 音乐

    你听到信仰的声音了么?

    62 引用 • 512 回帖
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖 • 2 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1340 回帖
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    292 引用 • 4495 回帖 • 663 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖 • 2 关注
  • JVM

    JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。

    180 引用 • 120 回帖 • 2 关注
  • 996
    13 引用 • 200 回帖 • 1 关注
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 688 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    59 引用 • 25 回帖
  • BND

    BND(Baidu Netdisk Downloader)是一款图形界面的百度网盘不限速下载器,支持 Windows、Linux 和 Mac,详细介绍请看这里

    107 引用 • 1281 回帖 • 41 关注
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    142 引用 • 442 回帖