涉及的aws云服务
- API-Gateway
- Lambda
- S3(Simple Storage Service)
- DynamoDB
业务需求
我们的业务特点是需要提供SDK给其它公司使用。为保证我们客户使用的稳定性,在交付前除了我们自身的测试外,还会在线上做自研产品的灰度测试,灰度测试的异常信息会被作为我们诊断问题的主要依据。
我们利用了AWS的云服务将分散于世界各地的手机异常汇集在一起,做统一分析。
技术架构
pegasus-exception-log.png基本流程是
- 手机设备以Http API 请求的形式将异常日志传送到API-Gateway.
- API-Gateway 将收到的API请求触发Lambda服务处理数据
- 原始日志信息以日期,手机终端等形式在S3中做分类存储
- 有关日志分类,统计以及日志信息在S3中的url等存储在DynamoDB数据库中做检索和数据分析。
云服务优势
- API-Gateway 请求容量自动扩展,无需考虑并发压力
- Lambda 函数式服务为无状态服务,不会和别的业务需求有耦合关系,方便升级
- API-Gateway 后端可以切换触发不同的Lambda 服务,可以毫秒级切换后台实现
- S3 存储的日志对象可以设定有效日期,失效后自动清理,方便维护
- DynamoDB 为无连接NoSQL分布式数据库,不会因为数据量增大而影响检索效率
- 整体为Serverless架构,减轻运维成本
网友评论