Takin社区版使用文档

l 使用系统

应用配置

下图中的应用信息,是通过接入agent启动的应用上报而来。

Takin社区版使用文档

在使用压测之前我们需要对我们的应用做一些简单的配置,从而实现我们的“生产环境压测”。点击页面上的应用详情后如下图所示:

Takin社区版使用文档

1. 影子库表配置

Takin社区版使用文档

点击影子库/表,切换到影子库表配置,然后点击新增影子库表

Ps:本文以影子表为例

Takin社区版使用文档

需要配置的只是方案类型,数据库url和表名称,url填写的是数据库的连接,例如:jdbc:mysql://192.168.1.122:3306/testdb

表名称填写的是自身的业务表名称(系统会自动追加“pt_前缀”),使用影子表的前提是需要我们创建一张与业务表一样的表(影子表),影子表的名称是以pt_开头加上业务表的名称。例如业务表名是employee,影子表名就是pt_employee。最后点击确认配置即可。

2.挡板配置

 挡板可以将请求拦截,并返回预设好的结果,模拟正常或异常的请求结果,可适用于以下场景:

  • 第三方调用服务:若压测链路里调用了第三方应用的接口,例如短信、支付,而第三方服务又不便配合压测时,可以使用挡板,将请求三方接口的方法重写,返回预设的结果,模拟调用;
  • 由于内部组织协调的关系,导致部分应用无法配合压测,可以使用挡板将调用下游接口的方法重写,返回预设的结果,模拟调用;
  • 若压测链路里遇到需要对某个方法进行改造的场景,也可以使用挡板,对该方法进行重写。
Takin社区版使用文档

只需要配置类名+方法名以及需要返回的java代码块。

类名+方法名,需要填写类名的全路径,示例如下:

com.shulie.io.ptdemo.test.BaffleTest#getTest 类名和方法名以#隔开

java代码块配置如下:

返回对象:

import com.example.demo.entity.User ;

User user = new User();

user.setName(“PT_test”); return user ;

返回普通String:

return “String”;

3.白名单配置

Takin社区版使用文档
Takin社区版使用文档

接口地址只需要写路径即可,不需要填写ip地址:端口,示例如下:

/api/demo/hello/name

链路梳理

Takin社区版使用文档
Takin社区版使用文档

服务入口不需要手工填写,通过发起业务请求,系统自动梳理,1分1次的定时任务进行拉取。

ps:请求需要添加压测标识才能视为压测流量,需要将压测标识添加到请求头,对应的key-value如下:

key:User-Agent value:PerfomanceTest

脚本配置

Takin社区版使用文档
Takin社区版使用文档

选择脚本相关联的业务即可,该脚本为jmeter的压测脚本。其中jmeter推荐使用如下配置:

安装 Concurrency ThreadGroup插件:

https://www.cnblogs.com/xioawu-blog/p/11127874.html

上传完毕保存即可。

场景配置

Takin社区版使用文档

点击如图的新增压测场景

Takin社区版使用文档
Takin社区版使用文档

按所示内容进行填写,配置各项压测指标和终止条件,告警条件非必填项。

填写完后保存,回到压测场景首页,选择压测场景点击启动,即可开始压测,检查配置完毕会进入压测实况,有各项图表数据,以及流量请求明细。

Takin社区版使用文档

压测完毕之后可以查看压测报告

可以通过压测场景的查看报告或压测报告查看

Takin社区版使用文档

报告数据如下图(部分图片):

Takin社区版使用文档

Takin开源项目地址:

https://github.com/shulieTech/Takin

本文来自投稿,不代表TakinTalks稳定性技术交流平台立场,如若转载,请联系原作者。

(21)
上一篇 2021年4月21日 下午3:56
下一篇 2021年7月2日 下午4:57

相关推荐

发表评论

邮箱地址不会被公开。

评论列表(7条)