Lambda@edge 实现负载均衡器功能
Posted RossCloud
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lambda@edge 实现负载均衡器功能相关的知识,希望对你有一定的参考价值。
一般的业务实现流程为CDN->ELB->EC2,但OTT业务往往会产生很高的流量费用,如果使用常规的架构,流量费用会成倍增加,为了降低费用,我们对架构做了一些优化。
AWS Cloudfront 提供了Lambda@edge 的功能,Lambda是一个托管的计算服务,与Cloudfront的结合可以对请求做相关的逻辑处理,所以我们借助Lambda@edge实现了负载均衡的功能,取消了ELB,减少了中间的成本。
方案要点:
1、节目自动扩展组服务器启动后发送SQS消息上报服务器的IP、当前的链接数 、网络指标
2、Lambda读取SQS消息存储热门节目服务器信息到DynamoDB表中
3、CloudFront设置非热门节目的域名(Route53 > EC2)作为源站
4、部署Lambda@edge对 CloudFront 回源请求做出修改,用户通过CloudFront域名访问节目,根据节目名不同回源到不同服务器
注意点:
1、EC2的公网带宽为5Gbps,需要选择适合的机器类型
2、Lambda@edge按内存和时间计费,需要设计好相关指标
以上是关于Lambda@edge 实现负载均衡器功能的主要内容,如果未能解决你的问题,请参考以下文章