微服务架构并已实践与真实项目

我要开发同款
proginn15075325332024年04月30日
42阅读
开发技术dubbo、springmvc、sentinel、rocketmq、java
所属分类微服务SpringCloud

作品详情

- DONE-完善的[工具集](联系张嘉嘉)。
- DONE-内部使用dubbo协议,对外统一提供http协议。
- DONE-服务异常能够向上传递并统一捕获包装。
- DONE-聚合网关负责协议转换及接口信息聚合,同时负责包装统一返回体(timestamp,code,message,data)
- DONE-使用配置系统能够对系统进行及时刷新
- DONE-每个服务自动生成完善的文档展示
- DONE-具备灰度发布的能力
- DONE-所有项目的配置由配置中心统一管理,公共的配置统一抽离
- DONE-日志配置文件可收集
- DONE-支持分布式事务
- DONE-实现更规范的缓存模式
- DONE-分布式任务调度系统
- DONE-消息队列功能
- DONE-具备熔断降级动态化配置能力,能够对接口级别进行限流降级
- DONE-分布式文件存储服务
- DONE-具备线上调试功能
- DONE-对调用链路能够进行查看并排错
- TODO-集成JWT与oauth2认证功能
- TODO-具备权限管理系统
- TODO-具备自动化部署能力
- TODO-集成支付模块
- TODO-数据配置中心安全

## 框架选型

- Dubbo + OpenFeign
dubbo用于内部服务间调用,openfeign用于调用外部调用
- Seata
用于处理分布式事务
- Sentinel
用于限流熔断,防止服务压力过大,造成雪崩
- SpringMVC
聚合服务中使用SpringMVC框架,同时更改运行容器为undertow
- Spring
Bean容器管理,粘合其他框架
- MybatisPlus
提供对数据库的操作ORM操作,同时使用其分页和慢SQL监控功能
- Hikari
数据库连接池,简单即高效
- SpringBoot Admin
服务监控,可查看服务运行状态(CPU/内存/线程等),查看环境变量,修改日志等级
- SpringCloud Gateway
网关
- Snif4j Swagger
用于服务聚合层生成Swagger页面,方便行程实时文档以及方便开发调用
- ELK
收集日志信息并展示,方便不同环境排查及定位问题。同时ElasticSearch也作为搜索组件
- RocketMQ
消息队列,稳定可靠
- Redis
缓存数据
- XXL-JOB
分布式任务调度
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论