1. 程式人生 > >AWS的性能檢測服務X-Ray(APM)

AWS的性能檢測服務X-Ray(APM)

img 創新 lambda 好的 以及 負責 客戶 混合 很多

發展之勢:
隨便最幾年微服務和Serverless(Lambda)的盛行,把原來一套系統可以按業務,人員或業務架構拆分得更加詳細,讓開發人員更專註於自己負責微服務或Serverless模塊,同時利用DevOps管理流程,這樣可以提升業務的快速叠代。雖然微服務或Serverless確實是可以提升業務的持續服務和可靠性,但是業務復雜度,管理難度和管理成本隨之提升,如何做好業務故障排查,特別是性能和穩定是很多企業開發及運維團隊所關心的,AWS為此提供一項易用且可視化的服務X-Ray,借助 AWS X-Ray,開發人員能夠輕松分析其生產行為及具有端到端跟蹤功能的分布式應用程序。您可以使用 X-Ray 確定性能瓶頸、邊緣情況錯誤以及其他難於檢測的問題。X-Ray 支持各種類型或大小的開發或生產應用程序,從簡單的異步事件調用和三層 Web 應用程序到使用微服務架構構建的復雜的分布式應用程序。這讓開發人員能夠快速找到並解決其應用程序中出現的問題,並改善最終用戶對其應用程序的體驗。

功能介紹:
X-Ray是可以很好的與AWS近幾年特別流行的技術(ECS/Lambda等)集成,尤其是未來有可能成為主流技術的Lambda,它可以提供數據跟蹤,數據軌跡采集與性能分析等可視化技術服務。以下我們來介紹現在及未來都比較常用的API化的應用,API化采用基礎技術就是Lambda,而優化Lambda和業務代碼的工具服務是X-Ray,我們通過一個例子來說明X-Ray如何幫助開發與運維團隊提升業務體驗。

1)X-Ray對Python for Lambda的請求分析
AWS Lambda 上的 Python – 對 Lambda 函數配置啟用 X-Ray 以分析傳入請求。添加X-Ray SDK for Python以分析 AWS 開發工具包、HTTP 和 SQL 客戶端。

技術分享圖片
有多個 AWS 服務提供 X-Ray 集成。集成服務提供不同級別的集成,可以包括采樣和向傳入請求添加標頭、運行 X-Ray 守護程序以及自動將跟蹤數據發送到 X-Ray。
? 主動分析 – 采樣和分析傳入請求。

? 被動分析 – 分析已經由其他服務采樣的請求。

? 請求跟蹤 – 對所有傳入請求添加一個跟蹤標頭,並將其向下遊傳播。

? 工具 – 運行 X-Ray 守護程序以從 X-Ray 開發工具包接收分段。

業務例子配置:
1)API化的業務架構圖:
技術分享圖片
? 使用 AWS X-Ray 檢測無服務架構工作流程中的響應瓶頸,將其運行時間提高了70%。
? 使用 X-Ray 的日誌聚合器和可視化視圖發現執行時間較長的 lambda ,使用 X-Ray 的明細功能,檢查該 lambda 的 CloudWatch 日誌。

2)配置X-Ray
在 AWS Lambda 函數上配置 X-Ray 集成

  1. 打開 AWS Lambda 控制臺
    技術分享圖片

  2. 選擇您的函數
    技術分享圖片

  3. 選擇 Configuration,在調試和錯誤處理下,選擇啟用活動跟蹤
    技術分享圖片

  4. 切換到 X-Ray 的可視化儀表盤
    技術分享圖片

  5. 條件篩選
    技術分享圖片

  6. 問題定位
    技術分享圖片
    從上圖可以看出: lambda 自身的業務功能較復雜調用頻率過高;lambda 讀取數據庫的延時過高。

  7. 重寫 lambda 並優化數據庫後,使用 X-Ray 服務映射來跟蹤並驗證更新是否得到期望的性能提升
    技術分享圖片
    從以上例子可以看出,X-Ray是一個很不錯的服務,可以幫助開發及運維團隊節約大量的業務排障時間,快速提升業務體驗。

【關於博思雲為】
技術分享圖片
作為一家專業的雲計算服務型企業,博思雲為專為客戶提供 AWS 上的運營服務:包括架構咨詢服務、遷移服務、雲安全集成服務、混合雲管理服務、大數據服務以及 DevOps 服務。目前,博思雲為在大數據、DevOps、架構、數據庫以及操作系統等都已取得廠商認證,在上海、南京、杭州、武漢等地設有分公司。為創新服務模式、引領 IT 服務業的發展,博思雲為將持續投入資源開展智能混合雲管理平臺、圖數據庫的研發等。

AWS的性能檢測服務X-Ray(APM)