单体升级为微服务
示例:将模块 system、demo ,快速切换成 SpringCloud微服务启动已升级到 Spring Cloud Alibaba 2021.0.1.0,支持 spring.config.import 方式引入nacos配置
一、配置host
提醒:必须配置,不然启动会报错。
127.0.0.1 jeecg-boot-redis
127.0.0.1 jeecg-boot-mysql
127.0.0.1 jeecg-boot-nacos
127.0.0.1 jeecg-boot-gateway
127.0.0.1 jeecg-boot-system
127.0.0.1 jeecg-boot-sentinel
127.0.0.1 jeecg-boot-xxljob
127.0.0.1 jeecg-boot-rabbitmq
可以使用工具 SwitchHosts 快速配置host.

二、勾选中Maven Profile dev和SpringCloud
切换成功效果
注意:
dev
和SpringCloud
需要同时勾选,不然会出错。

三、创建微服务所需数据库
手工执行jeecgboot提供的 初始化SQL,创建jeecg-boot
、nacos
、xxl_job
三个库。
重要提示:
1、nacos库脚本,默认加入jeecg所需配置。
2、如果用自己的nacos,请 手工添加 jeecg.yaml、jeecg-dev.yaml、jeecg-gateway-dev.yaml 等配置文件
四、启动微服务项目
4.1 启动nacos
4.1.1 配置NACOS数据库账号和密码
4.1.2 启动NACOS服务
找到下面的启动类,右键执行
项目:jeecg-server-cloud\jeecg-cloud-nacos
启动类:com.alibaba.nacos.JeecgNacosApplication
访问:http://localhost:8848/nacos
账号密码:nacos/nacos
如果需要自定义数据库名字,请参考截图
4.2 启动jeecg-demo
服务
找到下面的启动类打开注释,右键启动
项目:jeecg-server-cloud/jeecg-demo-cloud-start
启动类:org.jeecg.JeecgDemoCloudApplication
4.3 启动jeecg-system
服务
1 找到下面的启动类,右键启动
项目:jeecg-server-cloud/jeecg-system-cloud-start
启动类:org.jeecg.JeecgSystemCloudApplication
2 单体启动类可以删掉或者注释掉了
jeecg-system-start/src/main/java/org/jeecg/JeecgSystemApplication.java
4.4 启动网关gateway
- 找到下面的启动类,右键启动
项目:jeecg-server-cloud\jeecg-cloud-gateway
启动类:org.jeecg.JeecgGatewayApplication
- 所必须服务组件 启动效果
- 访问gateway看接口文档
五、Vue3前端对接 (jeecgboot-vue3)
修改.env.development,配置接口地址为gateway地址。
VITE_PROXY = [["/jeecgboot","http://localhost:9999"],["/upload","http://localhost:3300/upload"]]
VITE_GLOB_DOMAIN_URL=http://localhost:9999
启动访问: http://localhost:3100
六、启动更多服务模块
此部分非必须组件,是高级应用。为了降低初学者入门难度,单独放到jeecg-visual目录下,可选择使用。
6.1 Xxljob服务端
1. 先执行脚本 db/tables_xxl_job.sql 创建xxl_job库
2. 修改nacos配置文件,打开xxljob配置
默认是关闭了xxljob,请将nacos
中jeecg-dev.yaml
中的参数改成true
3. 启动xxljob服务启动
请右键执行 jeecg-cloud-xxljob/com.xxl.job.admin.XxlJobAdminApplication
项目:jeecg-server-cloud\jeecg-visual\jeecg-cloud-xxljob
启动类:src\main\java\com\xxl\job\admin\XxlJobAdminApplication.java
- 访问:http://localhost:9080/xxl-job-admin
- 账号:admin/123456
看到了online机器地址有信息说明链接成功了
4. 定时测试
右键执行一次定时
查看日志
查看服务的日志
说明xxljob集成成功
5. 新模块手工集成xxl-job定时任务
6.2 Sentinel服务端
项目:jeecg-server-cloud\jeecg-visual\jeecg-cloud-sentinel
启动类:src\main\java\com\alibaba\csp\sentinel\dashboard\JeecgSentinelApplication.java
-访问:http://localhost:9000
-账号密码:sentinel/sentinel
6.3 SpringBoot Admin服务监控
项目:jeecg-server-cloud\jeecg-visual\jeecg-cloud-monitor
启动类:src\main\java\org\jeecg\monitor\JeecgMonitorApplication.java
- 访问:http://localhost:9111/login
- 账号:admin/admin
特殊配置
- Sentinel已做了深度改造,支持持久化配置到nacos中
- 微服务做了很多示例,需要请打开
jeecg-system-cloud-start
项目pom.xml
注释 - 另外测试MQ需要安装rabitmq服务、测试seata也需要 安装服务端
- 更多微服务文档:Sentinel限流熔断降级 | 分库分表文档 | 分布式锁 | 消息总线
其他服务测试地址
软件服务 | 测试地址 | 账号密码 | 是否必须 |
---|---|---|---|
nacos(服务注册发现和统一配置中心) | http://localhost:8848/nacos | nacos/nacos | 是 |
rabitmq (消息中间件) | http://localhost:15672 | guest/guest | 否 |
xxl-job-admin(分布式定时任务) | http://localhost:9080/xxl-job-admin | admin/123456 | 否 |
sentinel (Sentinel监控) | http://localhost:9000 | sentinel/sentinel | 否 |
6.4. rabbitmq服务启动
2、修改nacos中jeecg-dev.yaml的rabbitmq链接配置
3、启动system,rabbitmq队列和交换机会自动生成
详细文档见 rabitmq消息队列集成2.4+