Wii
Wii
发布于 2025-08-25 / 11 阅读
0
0

Kung Fu Panda

简介

功夫熊猫(Kung Fu Panda),目标是想做成一个通用的请求录制、回放、响应对比、压测平台,目前请求录制、回放、响应对比完成度已经很高,支持 http、grpc 协议。

这件事的背景是,业务系统会有非常大的改动,但是没有测试流程,甚至无法通过回放请求来验证改动。

接口

下面是 HTTP 接口映射,主要用于 DEBUG。对于生产环境,提供了 GoC++ 版本的 SDK。

const std::unordered_map<std::string, ViewFunc> kRestfulApiViews = {
    {"/api/echo", api_echo},
    {"/api/grpc/echo", api_grpc_echo},
    {"/api/replay", api_replay},
    {"/api/replayv2", api_replay_v2},
    {"/api/debug/stat", api_debug_stat},
    {"/api/debug/sample", api_debug_sample},
    {"/api/log/record", api_log_record},
    {"/api/log/sample", api_log_sample},
    {"/api/log/stat", api_log_stat},
};

实战

生产环境中,在 Go 和 C++ 工程都有应用,请求的录制、回放、结果对比功能用起来都很顺手,在服务重构过程中起到了举足轻重的作用。


评论