概觀
AWS 上的分散式負載測試可在負載的情況下大規模地自動測試軟體應用程式,以在發行應用程式之前協助您識別潛在效能問題。此 AWS 解決方案可建立並模擬數千個連線使用者,以恒定的速度產生交易記錄,而無需佈建伺服器。此解決方案還允許您跨多個 AWS 區域執行測試。
優勢
在 AWS Fargate 容器上使用獨立的 Amazon Elastic Container Service (Amazon ECS) 測試軟體的負載能力。
透過建立自訂 JMeter 指令碼自訂應用程式測試。
排定負載測試以在指定日期或重複日期自動開始。
使用此解決方案的 Web 主控台,檢視用於執行測試的即時資料。
技術詳細資訊
步驟 1
Amazon API Gateway API 調用解決方案的微型服務 (AWS Lambda 函數)。
步驟 2
微型服務提供管理測試資料並執行測試所需的商業邏輯。
步驟 3
這些微型服務會與 Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB 和 AWS Step Functions 進行互動,以便執行測試情境並儲存測試情境詳細資訊。
步驟 4
Amazon Virtual Private Cloud (Amazon VPC) 網路拓撲,其中包含解決方案中在 AWS Fargate 上執行的 Amazon Elastic Container Service (Amazon ECS) 容器。
步驟 5
容器包含 Taurus 負載測試 Open Container Initiative (OCI) 合規容器映像,用於產生測試應用程式效能所需的負載。Taurus 是開放原始碼測試自動化架構。容器映像由 AWS 託管在 Amazon Elastic Container Registry (Amazon ECR) 公有儲存庫中。
步驟 6
將採用 AWS Amplify 技術的 Web 主控台部署到專為靜態 Web 託管而設定的 S3 儲存貯體。
步驟 7
Amazon CloudFront 提供對解決方案中網站儲存貯體內容的安全公用存取。
步驟 8
進行初始組態設定期間,該解決方案還會建立預設解決方案的管理員角色,並傳送存取邀請至客戶指定的使用者電子郵件地址。
步驟 9
Amazon Cognito 使用者集區管理使用者對主控台和 API Gateway API 的存取。
步驟 10
部署此解決方案後,您可以使用 Web 主控台來建立定義一系列任務的測試情境。
步驟 11
微型服務使用此測試情境在指定的 AWS 區域執行 Amazon ECS on Fargate 任務。
步驟 12
除了將結果存放在 Amazon S3 和 DynamoDB 中之外,測試完成後,輸出就會記錄在 Amazon CloudWatch 中。
步驟 13
如果您選取即時資料選項,則解決方案會在測試期間針對執行測試的每個區域將 Fargate 任務的 CloudWatch 日誌傳送到 Lambda 函數。
步驟 14
然後,Lambda 函數將資料發布到部署主堆疊的區域 AWS IoT Core 中的相應主題。Web 主控台訂閱該主題,然後您可以在 Web 主控台查看執行中測試的資料。
「在 Calabrio,我們的使命是協助聯絡中心更智慧、更快捷、更好地完成工作。我們需要快速為主要客戶設計全新的高效能功能。我們利用 AWS 上的分散式負載測試來大規模測試系統的效能,無需昂貴的企業測試授權,或針對開放原始碼工具撰寫自訂協同運作程式碼。藉助此 AWS 解決方案,我們以預期流量的六倍來設計和執行測試,並且比預定時間提前成功地推出新功能。」
相關內容
無論是私人企業還是公共部門服務,您需要對此充滿信心:您的應用程式可以隨使用者負載的增加而擴展。AWS 上的分散式負載測試允許您自動化應用程式測試、了解如何大規模執行,以及在應用程式發行前修正瓶頸。