【腾讯云的1001种玩法】十分钟轻松搞定云架构 · 负载均衡的最佳实践
大家好,这节课,我们来看一看负载均衡的最佳实践。
虽然说我们明白了,负载均衡是什么和能干什么,但是想要真正用好负载均衡还是差一些火候,这里,我们来给大家介绍一些负载均衡的最佳实践。
双向隐藏
双向隐藏基于私有网络来进行构建,实现了如下功能:
- 当云服务器集群需要出访公网时,配置路由表并通过一个 Internet 网关(VM1)进行 NAT 转发。对于 Internet 上的资源来说,请求的地址始终为 Internet 网关的公网IP,Internet上的资源对后端服务器集群完全无感知。
- 当Internet上的资源访问云服务器上的服务时,必须通过统一的负载均衡服务VIP进行访问。负载均衡器负责将所有请求使用一定的策略分发到后端的服务器上,Internet对后端服务器集群完全无感知。
简单的来说,就是进出各一个IP,减少暴露在外侧的IP,给用户展示的是一个完整的黑匣子。
在这种情况下,我们需要将我们的云主机放在私有网络,同时在外侧部署一个负载均衡器,负载均衡将请求分发到两台云主机上,对外只显示负载均衡器的IP。同时,在私有网络内设置,所有的流量都通过网关IP流出,这样保证对外也只有一个IP,这样的情况下,就保证整个应用,对外,只展示一个IP
流量分发
流量分发是最常见的使用场景。用户通过负载均衡访问云主机,负载均衡将海量的用户请求分发给不同的云主机。这种情况下,云负载均衡 和云主机构建了一个高性能的HTTP接入层,即使存在海量请求,也可以正常的处理请求。负载均衡将保证请求会均匀的转发到每一个接入层服务器,接入层服务器可使用廉价的、配置一致的虚拟机,或Docker容器来承载。
横向拓展
在这种模式下,负载均衡作为对外的唯一IP,可以保证接入层可以方便快捷的横向拓展,用户可以根据自己的需要,调整接入层的业务机器的数目,方便云主机对外提供服务。在调整的过程中,可以保证业务不停止。新增主机只需要在负载均衡中添加后端服务器即可。删除主机也只需要先删除负载均衡中的后端服务器配置,再删除云主机即可。
拓展阅读:
负载均衡 的最佳实践 :https://www.qcloud.com/document/product/214/529
私有网络快速入门:https://www.qcloud.com/document/product/215/8119
NAT网关:https://www.qcloud.com/document/product/215/4975
- 横向滑动的HorizontalListView滑动指定位置的解决方法
- 高可用架构-- MySQL主从复制的配置
- 零基础入门深度学习 | 第二章:线性单元和梯度下降
- 比特币价,黄金和无稽之谈 - 怎样不去给比特币估值
- 在PHP中,cookie和session的使用
- 剑指 offer代码解析——面试题29数组中出线次数超过一半的数字
- 剑指offer代码解析——面试题25二叉树中和为某一值的路径
- Spring MVC 4.2 CORS 跨域访问
- 剑指offer代码解析——面试题31连续子数组的最大和
- 在VS2010上使用C#调用非托管C++生成的DLL文件(图文讲解) 背景
- 剑指offer代码解析——面试题25二叉树中和为某一值的路径
- IntPtr 转 string
- 微信开发中网页授权access_token与基础支持的access_token异同
- angularJS constant和value
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 动态规划算法练习(4)--medium
- Python基础面向对象-其他
- Python基础之面向对象基础知识
- Python基础之文件操作知识
- 前端|利用js实现在日历中的签到效果
- Python基础之函数加强
- Python基础之函数二
- 前端|动态发光按钮
- Windows系统命令拼接
- 利用Hexo打造属于自己的网页版简历
- RCE远程控制Windows服务器——以win10虚拟机为例
- 解决InnoDB: Table mysql/innodb_index_stats has length mismatch
- R语言中对文本数据进行主题模型topic modeling分析
- QT学习第3天:QSlider使用方法
- qt学习第2天:QRadioButtonTest+ButtonGroup单选后提示消息,QComBox