笔者过往经验经常会遇到因为活动或遇到系统负载过大,导致单一主机无法负荷而造成服务延宕、甚至不可用,遇到这种情况,通常会准备多台主机增加负载能量,但流量可能只是一个早上的时间,为了一瞬的流量而必须耗费大量资源,在云端的环境中解决流量过大的解决方案,则可以透过弹性的方式应对突发流量兆呈的主机负载问题
AutoScaling是一组自动伸缩的规则,可以根据流量、CPU使用率等等参数,来自动水平扩展机器数量
水平扩展
AutoScaling包含三种架构:
同时又分为以下几种模式:
选择弹性伸缩
选择创建伸缩组
可根据自己的需求选择,此处因先前有建立过ECS Instance了,因此选择第二项
设置详细的策略,可根据自身业务场景选择,此次配置如下
此处请选择VPC、Subnet以及欲加入伸缩组的机器
有建立Load Balance、RDS的服务,可以在这边一并选择,让伸缩组知道当扩展的时候,Instances应该跟着哪些服务一起运行
上述选择完毕後,点选创建伸缩组
建立完毕後,选择查看详情,才能进一步编辑Scaling规则
选择伸缩规则与伸缩活动
点选创建伸缩规则
创建伸缩规则,可根据不同状况选择伸缩规则,在创建前必须先创建报警任务
创建报警任务
建立实际操作流程,此处显示的是当CPU使用率平均值连续两次大於等於50%,并小於80%时,会发出告警,同时扩展两台主机。若大於80%,则扩展到四台主机
最大实例数为3台,代表当扩展到了第四台後,若CPU降低使用率则会自动缩减到3台
此处展示伸缩组里面最小实例限制为1的时候,当有两台主机时,伸缩组会自动缩减一台主机
CDN通过全球布署众多节点以服务快取源站内容,达成就近存取,让使用者在存取网页、图片、影片等物件的速度加快,并且根据地区来分散存取节点,达成分流的效果;同时降低源站的压力
上图可以看到,在台湾的User 1若要存取南美洲的内容,原本需要通过DNS并经过路由绕到南美洲存取,中间的延迟时间较高。但如果透过CDN,就可以先将资料预先Cache(快取)在最靠近台湾的CDN节点上,User 1只要去该节点,即可取得网站资料。并且可以透过这个方式来达成全球分流,不必都到同一个服务器取得资料,可以很大程度的缓解服务器压力,从而避免服务器无法正常运作的状况
CDN架构示意图:
在导览页选择CDN
使用CDN的服务必须创建域名
填写想要通过CDN分发的网域域名;一般网站内容可以选择图片小文件即可;分发地区也可以根据自己的需求选择,若要在中国内使用CDN,则必须准备ICP备案
填写源站资讯
完成後将CDN的cname地址解析到DNS cname纪录
完成CDN布署後在管理选单内,可以针对回源、Cache、Https等做设置
使用nslookup,回传Alibabacloud的CDN cname域名及CDN节点IP
在这一篇写了很多内容,主要是在AutoScaling的设定步骤其实较为繁多,但如果有具体的逻辑也可以很好的针对需求使用这这个服务,而不至於太阳春,在CDN方面阿里云提供了一个简单易於设定的平台使用,相较於笔者在使用AWS、akamai等CDN在操作上对於新手来说有很大的优势
>>: Day11|【Git】档案管理 - 重新命名档案 git mv
甚麽是「Callback function」? MDN的解释如下: 「回呼函式(callback ...
今天要来学习程序语言中非常重要的一个概念(功能)-回圈,回圈到底可以拿来干嘛呢?先来看个例子: 如果...
Aloha!又是我少女人妻 Uerica ~ 我每天看到时间快接近午夜 12 点,都能感受到灰姑娘的...
前言: 之前提到 我一直在想办法让原本的训练模型 转成IOS可以用的模型 但找了许多方法後 还是没成...
透过继承,我们可以从原有的类别衍生出新的类别,原有的类别称为父类别,而衍生出的类别称为子类别。透过这...