1、项目简介 📹
2、代码简介 📹
3、本地部署 📹
4、功能简介 📹
5、流量录制简介 📹
6、流量回放简介 📹
7、自定义类Mock 📹
8、远程部署 📹
资源类型 | 资源版本 | 说明 |
---|---|---|
jdk | 1.8 | 工程使用jdk版本 |
mysql | 5.x | 存储配置数据建表语句参考 |
elasticsearch | 7.x(推荐7.16.2) | 存储录制和回放 json数据 (es安装文档参考) |
虚拟机/容器 | 无 | 2台分别部署moonbox-server和VUE前端资源(server和vue也可以部署在一台机器) |
月光宝盒是标准的maven工程,因此机器环境需要安装 java 和 maven 并配置好环境变量。 直接从代码仓下载代码到本地,在根目录执行 mvn clean install操作。执行maven工程的打包构建。
Moonbox-server是标准的spring-boot工程,只需要按照spring-boot方式启动部署即可。部署前,需要修Moonbox/Moonbox-server/Moonbox-web/src/main/resource/application.properties 中配置
#mysql
spring.datasource.url=mysql链接地址
spring.datasource.username=mysql数据库名称
spring.datasource.password=mysql数据库密码
#es
config.elasticsearch.nodes=es集群http地址
#其他
moonbox.server.url=moonbox-server所部属机器的ip/域名,方便后续和agent交互
1、修改vue.config.js文件中服务器地址,具体为
module.exports.devServer.proxy."/api".target="moonbox-server所部属机器的ip/域名"
2、安装nodejs及配置环境变量,可打开下方链接参考(nodejs版本建议安装12.10.0,版本过高会导致node-sass安装出现问题,如果出现权限问题,windows以管理员方式执行cmd执行命令,nodejs 12.10.0安装路径:https://nodejs.org/download/release/v12.10.0/)
2、打开cmd或者powershell,cd至client目录
3、npm install
4、npm run dev
流量的录制和回放可以在Moonbox管理台上可视化操作,操作详情请见 Moonbox操作手册
moonbox-java-agent 使用 transmittable-thread-local (简称ttl)进行跨线程录制回放,因此需要目标java进程使用ttl线程池或ttl runnable接口。
若目标java代码未使用ttl线程池,可以用java agent方式,在目标java进程启动时添加额外增强
-javaagent:D:\repository\com\alibaba\transmittable-thread-local\2.10.2\transmittable-thread-local-2.10.2.jar
更多请参见使用Java Agent
来修饰JDK
线程池实现类)