全栈工程师修炼指南
熊燚(四火)
Oracle 首席软件工程师
32206 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 46 讲
全栈回顾 (1讲)
加餐 (1讲)
全栈工程师修炼指南
15
15
1.0x
00:00/00:00
登录|注册

29 | Ops三部曲之二:集群部署

指定的哈希算法
其它寻找“最小资源占用的方法”
最小连接
轮询(Round Robin)
随机选择
填补 HTTP 通信的缺陷
存储信息
会话过期和销毁
有状态的需求
策略算法
反向代理
中间版本 V1.5
33% - 33% - 34% 部署
50% - 50% 部署
影子(Shadow)部署
A/B 测试(A/B Testing)部署
金丝雀(Canary)部署
蓝绿(Blue/Green)部署
滚动(Ramped)部署
重建(Recreate)部署
IP Stickiness
Session Stickiness
存放在浏览器的 Cookie 和服务端 Session 中的信息
代码部署策略
浏览器 Cookie
服务端 Session
负载均衡
数据和版本的兼容
滚动部署
新代码部署策略
无单点故障
扩展阅读
选修课堂:动手实践并理解 Session 和 Cookie 的原理
总结思考
服务端 Session 和浏览器 Cookie
负载分担
集群部署
Ops三部曲之二:集群部署

该思维导图由 AI 生成,仅供参考

你好,我是四火。
今天我们来谈谈 Ops 的三部曲之二,集群部署。毕竟一台物理机能够承载的请求数是十分有限的,同时,一台物理机还存在着单点故障(Single Point Failure)问题,因此我们通常需要把多台 Web 服务器组成集群,来提供服务。

负载分担

还记得我们在 [第 28 讲] 中介绍的反向代理吗?负载分担,又叫负载均衡,也就是 Load Balancer,就是反向代理设备中非常常见的一种,它可以高效地将访问请求按某种策略发送到内网相应的后端服务器上,但是对外却只暴露单一的一个地址。
除了作为名词特指设备,负载分担还可以作为动词指用来分配请求负载的行为,它可大可小,小可以到使用 F5 等负载均衡的专用设备来将请求映射到几台服务器上,但也可以大到用 DNS 来实现广域网的路由。例如同样访问 www.google.com,DNS 会对于不同地区的人解析为不同且就近的 IP 地址,而每个 IP 地址,实际又是一个更小的负载分担的子网和服务器集群。
上图演示了这样一个过程:
用户 A 和用户 B 都去 DNS 服务器查询 Google 的 IP 地址,但是他们在不同地区,不同的 DNS 服务器返回了不同的 IP 地址;
以用户 B 为例,根据返回的地址发送了一个 HTTP GET 请求,这个请求被负载均衡器转发给了服务器集群中的其中一台服务器 Web Server 2 处理并返回。这个城堡一样的结构图示就是负载均衡器,负责转发请求到实际的服务器。它可以由硬件实现,例如 F5;也可以由软件实现,例如 Nginx。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入探讨了Ops中集群部署的重要概念和相关技术特点。首先介绍了负载均衡器的作用以及不同的策略算法,如随机选择、轮询、最小连接等,强调了负载分担的重要性。随后详细解释了服务端Session和浏览器Cookie的作用,以及它们在填补HTTP通信缺陷方面的重要性。最后,探讨了集群部署中的新版本部署策略,包括滚动、蓝绿、金丝雀等,旨在保证业务不中断的前提下,实现新版本的部署和流量切换。文章还强调了数据和版本的兼容问题,提出了解决办法。总体而言,本文对于想要深入了解Ops领域的读者具有很高的参考价值。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《全栈工程师修炼指南》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • 💢 星星💢
    老师,金丝雀部署和滚动部署有啥区别呢?不都是缓慢过度到新版本么?具体的区别是什么。我还是没看懂?

    作者回复: 金丝雀部署,顾名思义,就是拿“金丝雀”节点去尝试新版本的执行(本质就是线上测试),看看有没有问题,有就回滚,没有的话再逐步铺开。但是滚动部署只是强调逐步释出,没有这样的含义。

    2020-03-27
    1
  • leslie
    准备去看看<六种部署策略>,然后找寻合适的方式部署一套试试;通过实践检验学习的效果。
    2019-11-18
    1
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部