zl程序教程

您现在的位置是:首页 >  云平台

当前栏目

分布式负载测试平台

2023-06-13 09:13:39 时间

亚马逊云科技为客户提供可扩展、分布式、无服务器架构,以交付用于 Web 应用程序性能测试的负载测试工具。此解决方案可自动启动并配置在 Amazon Fargate 上运行的容器,从而帮助您轻松创建和模拟数千个连接用户,无需预置服务器便能每秒钟生成选定数量的交易。该解决方案提供应用程序性能监控,可帮助您理解您的应用程序如何以预期负载大规模地完成执行,在发布应用程序前识别瓶颈。


下图显示了您可以使用该解决方案实施指南和随附的 Amazon CloudFormation 模板自动部署的架构。


Architecture of Spot Tagging Bot

这个解决方案利用Amazon CloudFormation实现分布式压测平台的自动部署。整个方案由以下几个模块组成:

基于Amazon API Gateway,Amazon Step Functions,Amazon Lambda的测试调度模块。测试调度模块利用Amazon Step Functions实现测试流程的编排,通过Amazon Lambda调用Amazon Elastic Container Service(Amazon ECS) Fargate 来启动容器集群并行执行测试脚本。

基于Amazon ECS Fargate的负载引擎模块。容器集群资源的创建,扩展,销毁等运维工作则交由Amazon ECS Fargate负责。集群单个任务完成后会将测试结果以.xml的格式存储在Amazon S3中留待进一步处理。

基于Amazon Amplify构建的Web控制台。这个控制台托管在Amazon S3中,通过Amazon CloudFront提供对该Web控制台的访问加速和安全调用。

基于Amazon DynamoDB,Amazon S3的测试数据存储模块。待所有指定任务完成后,测试结果将通过Amazon Lambda进行汇聚并存储在DynamoDB中。同时,利用Amazon CloudWatch实现对应图表的展示。

注意在Amazon CloudFormation启动时,您需要在选项中输入已备案的自有域名(CNAME)以便部署过程中同Amazon CloudFront进行关联。待解决方案部署完毕后,您可以通过该自有域名访问Web控制台开始创建测试用例,监控测试流程和查看测试结果。

除此之外,该解决方案会创建一个Amazon Virtual Private Cloud(Amazon VPC)。VPC为Amazon ECS Fargate容器集群提供了安全可靠,灵活可配的虚拟联网环境。

这个解决方案采用开源的Taurus测试自动化框架。Taurus主要被用于生成测试负载以测试用户应用程序性能。此解决方案在部署的时候,会从Amazon公共镜像库(Amazon ECR Public Gallery)中拉取含有Taurus及其依赖包的Docker Image(https://gallery.ecr.aws/p9r6s5p7/dlt)。出于安全性和网络性能考虑,用户也可以将该容器镜像拉取到本地并上传托管到您自己的Amazon Elastic Container Registry(Amzon ECR)中。

https://s3.cn-north-1.amazonaws.com.cn/aws-dam-prod/china/Solutions/distributed_load_testing/distributed-load-testing-platform-deployment-guide.pdf