本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
架構概觀
架構圖
使用預設參數部署此解決方案會在您的 AWS 帳戶中部署下列元件。
AWS 上 AWS 架構的分散式負載測試
注意
AWS CloudFormation 資源是從 AWS 雲端開發套件 (AWS CDK) 建構模組建立。
使用 AWS CloudFormation 範本部署之解決方案元件的高階程序流程如下:
-
分散式負載測試器 API 利用 Amazon API Gateway
來叫用解決方案的微服務 (AWS Lambda 函數)。 -
微服務提供商業邏輯來管理測試資料並執行測試。
-
這些微服務會與 Amazon Simple Storage Service
(Amazon S3)、Amazon DynamoDB 和 AWS Step Functions 互動,以存放測試案例詳細資訊和結果,並協調測試執行。 -
Amazon Virtual Private Cloud
(Amazon VPC) 網路拓撲部署,其中包含在 AWS Fargate 上執行的解決方案 Amazon Elastic Container Service (Amazon ECS) 容器。 -
這些容器使用已安裝 Taurus
負載測試架構的 Amazon Linux 2023 基礎映像。Taurus 是一種開放原始碼測試自動化架構,支援 JMeter、K6、Locust 和其他測試工具。容器映像符合 Open Container Initiative (OCI) 規範,並由 AWS 在 Amazon Elastic Container Registry (Amazon ECR) 公有儲存庫中託管。如需詳細資訊,請參閱容器映像自訂。 -
採用 AWS Amplify
技術的 Web 主控台會部署到設定為靜態 Web 託管的 S3 儲存貯體。 -
Amazon CloudFront
提供對解決方案網站儲存貯體內容的安全公開存取。 -
在初始組態期間,解決方案會建立預設管理員角色 (IAM 角色),並將存取邀請傳送至客戶指定的使用者電子郵件地址。
-
Amazon Cognito
使用者集區會管理 主控台、分散式負載測試器 API 和 MCP Server 的使用者存取權。 -
部署此解決方案之後,您可以使用 Web 主控台或 APIs 來建立和執行測試案例,以定義一系列任務。
-
微服務會使用此測試案例,在指定區域中的 Fargate 上執行 ECS 任務。
-
當測試完成時,解決方案會將結果儲存在 S3 和 DynamoDB 中,並在 Amazon CloudWatch
中記錄輸出。 -
如果您啟用即時資料選項,解決方案會在測試期間針對執行測試的每個區域,將 CloudWatch 日誌從 Fargate 任務傳送至 Lambda 函數。
-
Lambda 函數會將資料發佈至部署主要堆疊之區域中 AWS IoT Core
中的對應主題。Web 主控台會訂閱主題,並在測試執行時顯示即時資料。 注意
下列步驟說明 AI 輔助負載測試分析的選用 MCP 伺服器整合。只有在解決方案部署期間選取 MCP 伺服器選項時,才會部署此元件。
-
MCP 用戶端 (AI 開發工具) 會連線至 AWS AgentCore Gateway
端點,以透過模型內容通訊協定存取分散式負載測試解決方案的資料。AgentCore Gateway 驗證使用者的 Cognito 身分驗證字符,以確保授權存取 MCP 伺服器。 -
身分驗證成功後,AgentCore Gateway 會將 MCP 工具請求轉送至 DLT MCP Server Lambda 函數。Lambda 函數會將結構化資料傳回 AgentCore Gateway,並將其傳回 MCP 用戶端以進行 AI 輔助分析和洞察。
-
Lambda 函數會處理請求並查詢適當的 AWS 資源 (DynamoDB 資料表、S3 儲存貯體或 CloudWatch 日誌),以擷取請求的負載測試資料。