RPC實戰與核心原理之流量回放


流量回放:保障業務技術升級的神器

回顧

時鍾輪在 RPC 中的應用,核心原理就一個關鍵字“分而治之”,我們可以把它用在任何需要高效處理大量定時任務的場景中,最具有代表性的就是在高並發場景下的請求超時檢測。

流量回放

定義

  • 所謂的流量就是某個時間段內的所有請求,我們通過某種手段把發送到 A 應用的所有請求錄制下來,然后把這些請求統一轉發到 B 應用,讓 B 應用接收到的請求參數跟 A 應用保持一致,從而實現 A 接收到的請求在 B 應用里面重新請求了一遍。整個過程我們稱之為“流量回放”。

能做什么

  • 可以先把線上一段時間內的請求參數和響應結果保存下來,然后把這些請求參數在新改造的應用里重新請求一遍,最后比對一下改造前后的響應結果是否一致,這就間接達到了使用線上流量測試的效果。有了線上的請求參數和響應結果后,我們再結合持續集成過程,就可以讓我們改動后的代碼隨時用線上流量進行驗證

RPC中怎么支持流量回放

在 RPC 中,我們把能夠接收請求的應用叫做服務提供方,那就是說我們只需要模擬一個應用調用方,把剛才收到的請求參數重新發送一遍到要回歸測試的應用里面,然后比對錄制拿到的請求結果和新請求的結果,就可以完成請求回放的效果。

RPC回放示意圖


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM