背景:
1,公司服务全部在香港
2,所有的服务也都在香港
3,但是我们的客户都在国内
4,那么国内用户访问香港的服务 那么就会存在慢的问题
至于为什么不放到国内,因为我们公司是做nft的。所以你懂得。
一、加速
1.1 静态加速
1,顾名思义,就是静态文件的加速。比如html, js, css, img。等等。
2,这些静态资源的加速,用云厂商的cdn就可以解决。静态资源的加速。
1.2 动态加速
1,顾名思义,就是加速一些动态的数据,也就是我们所说的api接口的数据
2,但是api数据是实时的,不能先缓存啥的。
3,所以就只能加速api的访问速度
4,访问速度又受网络的影响,所以我们只需要加速网络
二、部署
1,我们选择了阿里云的全球加速产品(dcdn)
2,因为我们所有的资源都在阿里云
三、架构
用户:
来自全球各地的访问,其实国内的最多
3.1 第一步:dns
其实这块的dns阿里云有一个智能dns解析,这块也可以加速,在解析的速度
3.2 第二步:dcdn
1,dcdn可以理解为全球阿里云自己的上车入口
2,阿里云的dcdn全球有3200+的上车节点
3,因为有智能dns,所以会选择用户最近的dcdn节点上车
4,上车后,dcdn会根据算法计算出 最优的一条路线回源
5,这条网络线路,可能是阿里云内外网络,也可能是移动,电信,联通网络
6,就是寻找一条最快的网络,然后回源到GA上车点。
3.3 第三步:GA
1,dcdn后面是我们购买的全球加速GA
2,GA需要购买加速区域,我们购买了香港上车点,和北京上车点。
3,dcdn寻找到最优的路线回到GA
4,GA就是依托于阿里云自己强大的BGP网络有自有网络。
3.4 第四步:ALB
1,GA回源到了我们的ALB。
2,我们的ALB也是动态的,速度也会快很多
3,最开始我们选择了把waf加在了alb上面。但是后面我们有调整到了dcdn上面。
4,最开始waf在alb。然后大量的攻击 对dcdn产生了 很大的费用。
5,所以我们就直接在dcdn开启了waf功能,从源头就开始过滤攻击
6,效率更高了,更省钱了
3.5 第五步:后端服务器
1,最终会到我们自己的内网,服务器。
2,最终会返回数据。
四、总结
1,其实加速的架构有很多
2,看找到合适自己公司的业务的就行
3,最开始不知道咋 设计,也是一点一点的 实践出来的