Jvm-Sandbox-Repeater架构

一、Repeater整体架构

1.1 Jvm-Sandbox-Repeater简介

Jvm-Sandbox-Repeater是一个基于Jvm-Sandbox的 服务端录制/回放 通用解决方案

1.1.1 服务端录制回放的概念

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

1.1.2 Repeater核心原理

在这里插入图片描述

1.1.3 名词解释
  • 录制:把一次请求的入参、出参、下游RPC、DB、缓存等序列化并存储的过程
  • 回放:把录制数据还原,重新发起一次或N次请求,对特定的下游节点进行MOCK的过程
  • 入口调用:入口调用一般是应用的流量来源,比如http/dubbo,在调用过程中录制调用入参、返回值。回放时作为流量发起和执行结果对比依据
  • 子调用:子调用是调用执行过程中某次方法调用,区别于入口调用,该调用不作为回放发起录制时会记录该方法的入参、返回值,回放时用该返回值进行MOCK
  • MOCK:在回放时,被拦截的子调用不会发生真实调用,利用Sandbox的流程干预能力,将录制时的返回值直接返回
1.1.4 Repeater特性
  • 无侵入:无需修改代码,无需重启jvm
  • 通用性:支持所有JVM类型语言
  • 可插拔:随时启停、随时卸载
  • 扩展性:简单几行代码即可适配一个常用插件
1.1.5 Repeater应用场景
  • 业务回归
  • 架构感知
  • 问题排查
  • 压测流量
  • 线上监控

在这里插入图片描述

二、插件开发&使用演示

2.1 repeater-console体验在这里插入图片描述

三、问题解答

3.1 对性能的影响

结论:线上采样率控制在一定范围内,性能影响可接受
在这里插入图片描述

3.2 推荐使用agent方式还是attach方式

针对录制回放场景,推荐使用attach方式启动,更灵活,更可控,需要注意attach瞬间的影响
在这里插入图片描述

3.3 如何动态推送配置

配置变更后,用户主动推送,配置实时生效,无需重启
在这里插入图片描述

3.4 如何快速搭建测试平台

直接部署 repeater-console 到生产环境,把 repeater-module 分发到目标机器,录制后回放到指定环境
在这里插入图片描述
相关地址:
https://github.com/alibaba/jvbm-sandbox
https://github.com/alibaba/jvm-sandbox-repeater

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值