lmc-autotest BSF 全链路压测工具开源项目

我要开发同款
匿名用户2022年11月21日
47阅读
开发技术Java
所属分类高性能网络开发库、程序开发
授权协议Apache

作品详情

lmc-autotest是万级并发分布式全链路性能压测工具。 基于 BSF基础框架构建全链路压测框架,从框架层面进行 流量录制 (也可以从浏览器自定义录制),从工具层面进行流量回放,进行性能压测,自动输出压测报告,自动进行全链路功能验收,从而提升测试效能,指导网站性能优化。全链路压测架构设计

1.业务层引入bsfcore和autotestjar包,该基础框架可以对流量进行采样录制。2.采样录制的流量批量同步到mysql存储引擎。3.全链路压测管理端,进行任务编写并启动压测任务。4.压测任务分发到压测到节点集群,并进行样本流量批量回放压测。5.超过时间或者指定条件后,自动生成压测报告。 单个节点建议最大2000-3000并发线程,可以开多个压测节点(可部署10-20个节点,随时扩缩容), 支持上万级高并发大规模分布式性能自动化压测 。全链路压测任务执行生命周期任务分别由样本筛选脚本,错误过滤样本脚本,压测请求前脚本,压测请求后脚本,任务终止脚本组成。压测节点收到任务后按照任务执行生命周期,不间断进行压测,直到命中“任务终止脚本规则”后,正常退出。全链路压测管理端功能1.任务管理:可以对定制的压测任务进行编写,管理。可以实现不同场景和不同姿势的压测进行定制。 编写任务帮助文档2.定时计划:可以对所有任务进行定时计划编写,管理。实现任务定时自动化调度。 编写定时计划帮助文档3.节点状态:可以管理所有压测节点的心跳和状态及当前的性能情况。4.压测报告:可以管理所有压测任务自动生成的报告。5.执行日志:所有压测任务和定时计划执行的执行日志,在压测执行异常的时候,可以查看执行日志获悉。6.采样查询:自动化bsf框架录制的流量或者用户自动导入的流量,可以通过此菜单进行查询和模拟调用验证。7.公共方法库:通过定义公共的方法库,简化任务和定时计划的编写。 公共方法库帮助文档8.用户管理:可以管理平台用户和token授权。9.帮助文档:到gitee源码管理文档和一些最佳实践文档。快速编译注意bsf-core.jar和bsf-autotest.jar包,可能出现包引用错误,请至 giteerelease 中下载相应jar包。cdlmc-autotestmvninstall

 

 快速安装一般在mysql8.0,jdk8环境下,三步执行即可安装。同样也可以支持云原生方式安装,如 阿里云安装最佳实践。sql初始化脚本管理端provider包 (65M左右大小)节点端task包 (20M左右大小)#web管理端nohupjava-jar\-Dspring.datasource.druid.url=jdbc:mysql: //127.0.0.1:3306/autotest?useSSL=false\-Dspring.datasource.druid.username={数据库}\-Dspring.datasource.druid.password={数据库}\lmc-autotest-provider.jar>provider.log  2 >& 1   &#压测节点nohupjava-jar\-Dspring.datasource.druid.url=jdbc:mysql: //127.0.0.1:3306/autotest?useSSL=false\-Dspring.datasource.druid.username={数据库}\-Dspring.datasource.druid.password={数据库}\lmc-autotest-task.jar>task.log  2 >& 1   & 支持多语言使用和第三方介入OPENAPIjava完整版自动录制样本流量sdk集成C#版本流量录制simplesdkjava版本流量录制simplesdk完善的实践文档小白快速上手压测小白快速流量回放压测自动化QPS核心和主要接口jenkins触发性能压测自动化QPS核心和主要接口性能url压测自动化QPS不同级别接口压测自动化QPS不同开发人员接口压测自动化QPS全链路接口压测自动化QPS秒杀/活动接口压测-待实践自动化TPS秒杀/活动场景压测-待实践k8s滚动升级验证功能界面展示 

 

 

 

 

 by   车江毅
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论