springboot+dubbo+sentinel限流+定时器任务管理+API在线文档项目

介绍:之前的博文里有写到一章springboot+dubbo项目,这篇文章是在之前文章基础上新加了一下功能,这篇文章就不详细写出来了,直接项目共享出来,大家感兴趣可以下载看看

一、项目结构

hucheng-springboot-dubbo    (项目根目录)
    |__doc    (数据库sql和定时器控制台项目源码包)
    |__dubbo-admin-master    (dubbo控制台源码)
    |__dubbo-api    (项目API文档及调用,第三方的)
    |__dubbo-common    (项目公用类,工具类)
    |__dubbo-job    (定时器项目,第三方的)
    |__dubbo-rest    (项目请求入口,消费者)
    |__dubbo-seckill-service    (生产者,秒杀服务)
    |__dubbo-sentinel-dashboard    (限流控制台)
    |__dubbo-user-service    (生产者,用户服务)


二、项目运行前准备
需要安装
1.zookeeper
2.mysql
3.rabbitmq
4.redis

三、项目数据库
安装好mysql数据库直接执行doc下的sql文件即可
1.项目数据库

dubbo

2.定时器数据库

xxl_job

3.api文档数据库

apidev


四、项目启动顺序
1.代码下载下来先编译

mvn clean install

2.启动项目前确保所有数据库运行

zookeeper,mysql,redis,rabbitmq

3.项目启动顺序

dubbo-user-service–》dubbo-seckill-service–》dubbo-rest–》dubbo-api–》dubbo-job–》dubbo-sentinel-dashboard
dubbo-api是用tomcat启动
其他的项目都是springboot

dubbo-sentinel-dashboard已经实现了限流规则持久,将规则配置持久到zookeeper中
服务重启之后限流规则配置也不会丢失
热点限流规则还没有持久到zookeeper中,有空会研究下

4.如果要看dubbo注册中心监控控制台

修改dubbo-admin-master下dubbo-admin项目下的application.properties文件dubbo.registry.address=zookeeper://127.0.0.1:2181 ##注册中心地址

5.项目下所有的mysql,redis,rabbitmq地址都是本地127.0.0.1,如果是要连接服务器上的,直接修改所有项目下的application-local.yml或application.yml配置即可

五、项目请求入口
1.项目请求案例

请求地址
http://localhost:9090/rest/

post 请求

header头部信息
Content-Type:application/json
action:user_login
accessId:94d6dd22afd7450ab711f66508617e67
format:json
userId:0

body请求内容
{
“reqObject”:{
“username”:“admin”,
“password”:“12345678”
}
}

2.请求情况

API不需要登录的情况,需要带上系统默认的accessId (获取系统默认accessId接口 user_defaultAccessId)
API需要登录的情况,需要带上用户登录系统返回的accessId以及用户ID

3.图解

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

4.密码没有处理,项目只是完成简单的功能

六、新增API
1.新增API文件类

com.hucheng.rest.web 包下
类方法案例:TestAction、testV100(类名已Action结尾、方法名已V100结尾)

2.新增api配置

编辑resources下的api.properties
新增一个test_test即可


七、service层

service是dubbo生产者
api是接口
provider是具体实现

新增生产者服务在service实现类上加上注解
@Component
@Service(interfaceClass = GoodsService.class, retries = -1, timeout = 5000)

interfaceClass 注册生产者服务
retries 失败超时是否重试 -1是不重试
timeout 超时时间


八、源码下载

https://download.csdn.net/download/qq_21082615/11286301


九、项目账号密码
1.定时器项目账号密码

admin 123456

2.dubbo控制台账号密码

sentinel sentinel

3.API文档账号密码

admin 123456

4.dubbo监控平台

root root


十、项目截图

定时器
定时器项目其实就是发送http请求到dubbo-rest项目接口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

API文档
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
sentinel控制台
在这里插入图片描述
在这里插入图片描述
dubbo监控
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值