一、什麼是replayer
Replayer是一個用於在生產環境中對線上流量進行可重複性回放的工具,是在美團點評公司的實踐中發展而來的,目的在於解決線上問題,提高問題排查效率。
美團點評在內部提出了一個理念——戰時狀態就是日常狀態。因此,在日常狀態下,Replayer可以通過回放歷史請求,復現線上生產環境的實際情況;在出現問題時,可以使用Replayer對問題進行詳細的還原,加快問題排查。
二、與realplayer的關係
replayer與realplayer是兩個不同的東西,不要把它們混淆。RealPlayer是一款媒體播放器軟件,Replayer是一款用於生產環境中重放歷史請求的工具。Replayer可以將歷史請求從文件中讀取,並將它們在不同的環境下進行處理,可以用於性能測試、故障修復、安全分析等方面。
三、如何使用replayer
1、安裝replayer
Replayer可以下載安裝包安裝。
2、操作步驟
通過replayer進行回放,可分為三步
(1)錄製業務請求
replayer record --ip=127.0.0.1 --port=8080 --out=./output --dump-all-requests=http://localhost:8080
上述命令表示,在本地將請求轉發到http://localhost:8080,同時將所有的請求響應保存在指定的目錄下,方便之後進行回放
(2)在本地啟動服務
replayer play --ip=127.0.0.1 --port=8888 --requests=./output
上述命令表示,在本地啟動服務,監聽8888端口,將之前錄製的請求發送至該端口
(3)在瀏覽器中進行回放
啟動服務後,打開瀏覽器,訪問如下網址:
http://127.0.0.1:8888
即可進行回放
四、replayer的優缺點
1、優點
(1)回放流量準確無誤:Replayer能夠將歷史請求原樣發送,確保回放過程中不出錯。
(2)流量採集靈活:Replayer能夠解析多種數據協議,包括 HTTP、HTTPS、RPC 等協議,而且可以根據需要選擇性地採集。
(3)支持多種回放機制:Replayer能夠實現常規回放、壓力回放、灰度回放等回放機制。
(4)兼容多重場景:Replayer不僅可以在生產環境中進行回放,還可以在測試、UAT環境中對新功能進行回歸測試。
2、缺點
(1)實時回放耗時較長:對於實時回放的情況下,回放耗時更長。
(2)協議解析限制:由於Replayer的解析能力有限,可能無法解析所有的協議。
五、總結
Replayer是一個很實用的生產工具,在美團點評等大型互聯網企業中已經得到了廣泛應用。它可以有力地支撐生產環境的可重放性,提供可靠的數據供排查和監控,極大提高了互聯網企業的生產效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/183990.html