文章目录

  • 冷备/热备/温备
    • 热备流程
    • 冷备优点
    • 复制
  • 水平扩展(平行扩容?)/垂直扩展
    • 平行扩容
    • 垂直扩展
    • 平行扩容和垂直扩容有什么区别?
  • 弹性扩容
  • 来源

冷备/热备/温备

热备(在线备份):在数据库运行时直接备份,对数据库操作没有任何影响。
冷备(离线备份):在数据库停止时进行备份。
温备:在数据库运行时加全局读锁备份,保证了备份数据的一致性,但对性能有影响。

热备流程

  1. 备份开始时,记录重做日志的日志序号(LSN)。
  2. 复制共享表空间和独立表空间的文件。
  3. 复制完后,再次记录重做日志的日志序号(LSN)。
  4. 通过前面记录的日志序号来复制在备份时产生的重做日志。

冷备优点

  • 备份简单,只需要复制相关文件即可。
  • 恢复简单而且速度快,不需要执行任何 SQL 语句,也不需要重建索引。

复制

数据库复制的原理是异步实时的将二进制日志(binlog) 重做并应用到从数据库。

水平扩展(平行扩容?)/垂直扩展

平行扩容

平行扩容也就是水平扩容,以增加节点的方式扩展整个数据库,达到系统对数据库的需求。平行扩容简而言之就是把数据库已有的数据转移到另一个内存大的数据库当中,数据在迁移的过程中需要满足业务可用和数据不可丢失两个方面,否则会影响公司的正常运营,尤其是数据丢失将会给企业带来极大的危害,因此在使用平行扩容的时候建议备份数据,这样数据即使损坏,还有一份完整的数据库可以使用,这也是程序员都会做的一项工作。

平行扩容是企业转移数据中常用的一种方式,虽然风险比较大,但是只要做好准备工作,都可以实现数据的转移,这样可以实现系统内存合理化的利用,不会造成浪费。现在数据迁移技术逐渐成熟,系统升级过程中不会影响系统的使用,业务人员也是可以了解客户信息,不过增加客户信息建议数据迁移之后再统一输入。

垂直扩展

提升单机处理能力。垂直扩展的方式又有两种:

(1)增强单机硬件性能,例如:增加CPU核数如32核,升级更好的网卡如万兆,升级更好的硬盘如SSD,扩充硬盘容量如2T,扩充系统内存如128G;

(2)提升单机架构性能,例如:使用Cache来减少IO次数,使用异步来增加单服务吞吐量,使用无锁数据结构来减少响应时间;

在互联网业务发展非常迅猛的早期,如果预算不是问题,强烈建议使用“增强单机硬件性能”的方式提升系统并发能力,因为这个阶段,公司的战略往往是发展业务抢时间,而“增强单机硬件性能”往往是最快的方法。

平行扩容和垂直扩容有什么区别?

平行扩容和垂直扩容是两种不同的方式,从“平行”和“垂直”两个词语上就能够看出来它的本质区别,平行则是从左往右的一种水平方式,垂直则是自上而下的一种方式,扩容的方向不同,难度就会不同。垂直扩容是增加内存的方式使得整个系统的容量扩充,扩容的难度比较低,不过会受系统内存的限制,任何一个系统都会有相应的运行内存和存储内存,不可能无限制的扩大,当扩大到一定程度时就会自动停止,则需要使用其它的方式解决数据库满的问题。水平扩容的难度比较大,扩容的过程中数据可能会丢失,建议使用redis cluster方法解决。

不管是提升单机硬件性能,还是提升单机架构性能,都有一个致命的不足:单机性能总是有极限的。

综上所述,水平扩容就是选择一个更大容量的数据库,保证企业内的数据都能够得到合理的保存,垂直扩容只能够解决眼前暂时的问题,后续还需要进行水平扩容,因此建议人们直接选择水平扩容的方式。

弹性扩容

操作步骤

您可以配置多个触发器,EDAS将根据触发器自动为您扩容和缩容应用实例。

  1. 登录EDAS控制台。
  2. 在左侧导航栏中单击应用列表,在顶部菜单栏选择地域并在页面上方选择微服务空间,然后在应用列表页面单击具体的应用名称。
  3. 在应用详情页面的左侧导航栏选择应用设置 > 弹性伸缩,然后单击添加弹性策略。
    您也可以在 应用总览页面右上角,选择 扩缩 > 弹性扩缩,然后单击 添加弹性策略。您也可以通过页面下方的 快速添加指标策略和 快速添加定时策略区域来添加弹性策略。
  4. 在策略名称的文本框中输入自定义的弹性策略名称。
    说明 策略名称必须以字母开头,允许数字、字母、短划线(-)或下划线(_)组成。最大长度30个字符。
  5. 在触发条件区域单击新增触发器,然后在右侧弹出的新增触发器面板配置触发器规则,配置完成后单击确定。
    表 1. 弹性策略触发器参数说明
    参数 描述
    触发器名称 必须以字母开头,允许数字、字母、短划线(-)或下划线(_)组成。最大长度30个字符。
    触发器类型 选择系统提供的触发器类型,当前支持定时触发器和应用指标触发器。

    • 定时触发器

      适用于负载强周期型应用,例如白天(08:00~20:00)负载高、 晚上(20:00~08:00)负载低或工作日(周一~周五)负载高、周末(周六~周日)负载低的周期性应用。

      1. 周期:您可在下拉列表中选择每天、每周或每月。

        说明 选择 每周后根据需求可选择具体日期来配置触发规则,如果一周内不同日期的单天内触发规则不同,可通过创建多条定时触发器来实现。
      2. 单天内的触发时间:通过单击添加来创建每天的触发时间和实例数。
        注意

        • 如果错过设定的触发时刻,定时策略需要等到下一周期才会被触发。
        • 两个邻近触发时间间隔要大于10分钟。
        • 两个邻近触发时刻设定的实例数变化需要大于10%,即Pod2 / Pod1 > 1.1或者Pod2/ Pod1 < 0.9,其中Pod1是前一个时刻设定的实例数,Pod2是后一个时刻设定的实例数。
      3. 之后保持实例数:跟据实际情况设置弹性策略执行后保持的实例数,可设置范围为0~50。
      4. 触发模式:触发周期选择每天时呈现此参数,可在下拉列表中选择边沿触发模式或水平触发模式。
        • 水平触发:弹性策略在两个设定时间段内,一直保持开始时刻的设定值。
        • 边沿触发:弹性策略只在设定时刻时生效,超过设定时刻则忽略。
    • 应用指标触发器

      适用于应用指标与容量线性相关型应用,例如通过压测确定应用单实例可以处理200 QPS,当QPS达到1200的时候,将扩容至6个实例的应用。

      1. 指标名:支持选择应用提供服务平均每秒请求量、应用提供服务平均响应时间(毫秒)、应用平均CPU使用率和应用平均内存使用率四种指标。
      2. 按均值计算指标数据:触发器的类型为应用指标触发器且指标名称选择应用提供服务平均每秒请求量、应用提供服务平均响应时间(毫秒)时,呈现此参数。当前系统默认按实时数据计算指标数据,勾选按均值计算指标数据后可按照均值计算,可有助于减少数据波动。按照均值计算的指标时间窗口,即用于均值计算的数据时间范围,参数范围为300~3600秒。
      3. 目标值:设置期望的监控指标目标值,系统会帮您自动扩缩实例数,无限接近您设置的目标值。
        说明 当应用监控指标的实际值小于目标值时,系统会自动帮您缩容实例。反之,系统会自动帮您扩容实例。
    方式 根据需要选择触发器的运行方式:

    • 仅观测:观测触发器指标,当指标达到期望值时发送事件,不触发扩缩容动作。
    • 观测并扩缩:观测触发器指标,当指标达到期望值时发送事件,触发扩缩容动作。
    说明 当选择 应用平均CPU使用率和 应用平均内存使用率作为触发器指标时,目标值的0.9~1.1倍系统会认为是合理的波动,当实际值超过这个范围,才会触发弹性。
  6. 配置最大应用实例个数和最小应用实例个数。
    • 最大应用实例个数:可设置的范围为2~1000。触发弹性伸缩条件后,应用扩容,其实例数可达到最大值。
    • 最小应用实例个数:可设置的范围为0~1000。触发弹性伸缩条件后,应用缩容,其实例数可达到最小值。
    说明

    • 应用目标实例数=max(触发器1目标实例数,触发2目标实例数,...,触发器N目标实例数)
    • 当目标实例数大于当前实例数时,EDAS则对应用进行扩容,其应用实例数不超过所设的最大应用实例个数;反之,则进行缩容,其应用实例数不低于所设的最小应用实例个数。
    • 最小应用实例个数不得等于最大应用实例个数。
    • 建议当前实例数在您设置的最小应用实例个数和最大应用实例个数范围内,如果不在范围内,保存弹性策略时会提示定时触发器保持实例数已超出最大最小实例数范围,但仍能保存。

  7. 可选:单击自定义弹性策略开关,启用弹性伸缩策略并配置扩容和缩容行为。
    • 冷却时间(s):根据需要设置冷却时间。单位为秒,范围为0~3600,扩容行为冷却时间默认为0秒,缩容行为冷却时间默认为300秒。
    • 扩容策略或缩容策略:在扩容行为区域单击添加扩容策略,或在缩容行为区域单击添加缩容策略,在弹出的对话框中,配置扩容或缩容策略,然后单击确定。
      • 策略类型:根据需要选择副本个数或百分比作为策略类型。支持Pods和Percent类型,Pods表示副本个数类型,Percent表示百分比类型。
      • 步长/百分比:根据选择的策略类型设置该参数值。例如,策略类型选择Pods,则此处值为Pod数量。
      • 时间周期(s):策略执行周期。例如,策略类型选择Percent,步长/百分比设置为10,时间周期为60秒,则允许在一分钟内最多扩容或缩容当前副本个数的百分之十。

      单击同步至缩容策略或同步至扩容策略,可以将配置的扩容或缩容策略同步至缩容或扩容策略。

    • 选择策略:支持Min、Max和Disable三种策略。默认为Max。
  8. 完成以上配置成后单击保存。
  9. 在弹性策略页面右上角单击启用。
    触发弹性策略后,如果EDAS依据所设策略对应用实例进行扩容或者缩容,表示自动弹性伸缩策略设置成功。

来源

自动弹性扩缩容
什么是平行扩容?
如何提升系统的并发能力之垂直扩展
热备、冷备、温备

【架构设计】冷备/热备/温备、水平扩展/垂直扩展、弹性扩容相关推荐

  1. 高可用架构设计之无状态服务

    高可用架构设计之无状态服务 笑谈架构设计 事故的发生是量的积累的结果,任何事情都没有表面看起来那么简单,在软件运行的过程中,随着用户量的增加,不考虑高可用,迟早有一天会发生故障,不得事先考虑高可用设计 ...

  2. 使用 Unity 3D 开发游戏的几个架构设计难点

     Unity 3D 引擎对于开发者来说,入手非常快,因为它采用的是 C# 作为开发语言,这也大大降低了开发者的门槛.但凡只要懂一门编程语言的人都能使用 Unity 3D 引擎开发,另外 Unity 3 ...

  3. 使用 Unity 3D 开发游戏的架构设计难点

    作者:姜雪伟,网名:海阳,CSDN 博客专家,资深 3D 游戏引擎,IT 高级讲师,畅销书作者,从事 IT 行业 15 年,主导或参与了 18 款大型游戏的研发:国家专利发明人:已出版书籍:<手 ...

  4. 大数据时代的IT架构设计

    大数据时代的IT架构设计(来自互联网.银行等领域的一线架构师先进经验分享) IT架构设计研究组 编著   ISBN 978-7-121-22605-2 2014年4月出版 定价:49.00元 208页 ...

  5. 招商银行王龙:金融科技银行数据架构设计的13条守则(含PPT)

    作者简介:王龙,招商银行数据中心MySQL资深架构师,将MySQL引入招商银行,并从无到有建设MySQL生态,解决了MySQL在银行领域使用的诸多问题. 本文根据招商银行资深架构师王龙在『3306π』 ...

  6. 架构设计-架构愿景分析

    架构愿景实际是回答了哲学家经常思考的三个问题: 我是谁? (问题是什么,现状) 从哪里来??(原因:为什么出现问题) 到哪去? (愿景和目标是什么) 一.前言:架构设计的步骤 架构设计非常适合使用瀑布 ...

  7. 大数据全栈技术与商用平台架构设计之路

    回首10年多的科研工作历程,也是中国经济高速发展的10多年,中国高铁.核电.航空.互联网.云计算.大数据.人工智能等领域无不铭刻着"中国名片",这就是科技是第一生产力的实践验证!1 ...

  8. 数据科学家分享:“大数据全栈技术与商用平台架构设计之路”

    各位好: 回首10年多的科研工作历程,也是中国经济高速发展的10多年,中国高铁.核电.航空.互联网.云计算.大数据.人工智能等领域无不铭刻着"中国名片",这就是科技是第一生产力的实 ...

  9. 系统架构设计(3)-可扩展性

    即使系统现在可靠,不代表将来一定可靠.发生退化的最常见原因是负载增加:并发用户从最初的10,000 增长到 100,000或系统目前处理数据量超出之前很多倍. 可扩展性,描述系统应对负载增加的能力.它 ...

最新文章

  1. webSocket详解
  2. laravel路由无法访问,报404,No query results for model [App\Models\...]
  3. STM32如何查找hardfault原因
  4. HDFS HA与QJM(Quorum Journal Manager)介绍及官网内容整理
  5. Django之序列化
  6. mysql update 跳过重复_MySQL通过UPDATE / DELETE整合重复的数据记录
  7. php explode 循环,PHP explode 切割字串 快速取得最後一個值
  8. opencv Mat push_back
  9. 影响网络OA系统成功实施的技术因素浅析
  10. HTML:hr横线改变颜色
  11. 科研软件宝藏公众号开通
  12. 全国行政区划代码到行政村_行政任务
  13. pray例子----------------------设置navigation 与 其按钮背景
  14. jpa执行插入报error performing isolated work错误
  15. 云班课计算机基础知识答案,云班课上的作业
  16. 解决远程windows server12桌面复制文件大于2G出错问题
  17. 统计学习方法——李航 笔记
  18. 杰理AC632N—ADC电压检测
  19. 【航线运输驾驶员理论考试】领航
  20. 深度学习最强资源推荐:一文看尽 GAN 的前世今生

热门文章

  1. 2022年高薪测试必备核心技术
  2. fdisk分区emmc操作
  3. unity urp测试_测试Unity
  4. 32位oracle数据迁移到64位oracle,将Oracle数据库从32位平台迁移到64位
  5. HCIP网工数通Datacom之网工中级(上篇)
  6. Manjaro 输入法配置
  7. 论文阅读:Questions Are All You Need to Train a Dense Passage Retriever
  8. 汇信外贸ERP车辆汽配行业管理软件
  9. js计算字数的方法(与word计算出来一样)
  10. 《Spark商业案例与性能调优实战100课》第15课:商业案例之纯粹通过DataSet进行电商交互式分析系统中各种类型TopN分析实战详解