mini-cloud 是我业余时间整合的过去几年架构中使用过的一些组件,以及市面一些开源项目集中在一起重构开发的大型微服务开源框架 后台基于spring cloud alibaba ,spring cloud 等全家桶 前端基于vue3+emelent plus 包含认证中心,注册中心,用户权限中心,seata 分布式事务,独立开发的全场景适配独立的可视化工作流引擎,报表引擎,fabric区块链使用, 数据库读写分离,flink大数据处理,neoj4关系图库等都会在一个个版本慢慢开源,欢迎大家订阅,加入学习群一起讨论,群中有开原地址,我基本都回及时回复,针对源码或者开发中的各种问题大家都可以集思广益,不仅限于minicloud本身的问题,只要我有时间第一时间都回回应,技术是没有边界和高低之分的的,讨论才有成长~
欢迎订阅《带大家从0~1搭建大型微服务saas框架》专栏,里面有所有服务,组件及代码的开发思路和解读
这个版本我只进行了基本测试,改了一些重大bug,大家如果遇见bug 记得提出issues,我会即时修复
第一个版本主要是为了应用于大家的微服务学习,也可以适用微服务项目的基本使用 所有的源码思路以及解读在专栏《带大家从0~1搭建saas微服务框架》都有说明与源码讲解
| 功能 | 说明 |
|---|---|
| support 组件支持服务 | |
| 分布式文件服务 | |
| 认证中心服务 | |
| 分布式事物服务 | |
| 网关服务 | |
| 注册中心服务 | |
| 用户权限管理服务 | 功能模块如下: |
| 用户管理模块 | |
| 部门管理 | |
| 角色管理 | |
| 部门tag管理 | |
| 租户管理 | |
| 内嵌swagger |
| 权限管理等 |等等 | | simulate 模拟一些功能场景的demo |目前有商品服务,订单服务 |
虽然功能少,但是基本上,有了这些基本功能,微服务项目已经可以进行正常业务开发了
需要jdk配置,导入数据库以及启动redis,如下
jdk需要1.8以及以上
mysql:5.7+ mariadb10.8.4+
/根目录/readme-center/sql下
首先执行schema.sql中的语句 执行完后,将其他的sql分别导入进去
/根目录/readme-center/redis下 解压后进入redis 目录 cmd下执行命令:redis-server redis.windows.conf
地址:https://github.com/xiaoliangliang123/miniclou 注意使用tag 1.0.0.0-beta版本
地址:https://github.com/xiaoliangliang123/minicloud-tenant.git 注意使用tag 1.0.0.0-beta版本***
地址:https://github.com/xiaoliangliang123/minicloud-seata.git 注意使用tag 1.0.0.0-beta版本
地址:https://github.com/xiaoliangliang123/minicloud-manager-vue3.git *** 注意使用tag 1.0.0.0-beta版本
注意1: 几个后端本地repo都要配置在同一个maven repo目录下 注意2:全部都在本地本机开发时几个后端项目启动jvm参数最好设置为 -Xms256M -Xmx256M,当然了,如果本机内存很高当我没说~
├─mini-cloud-authentication-center 认证中心服务
├─mini-cloud-common 共通模块
│ ├─mini-cloud-common-auth 认证共通
│ ├─mini-cloud-common-balancer 负载均衡共通
│ ├─mini-cloud-common-cache 缓存共通
│ ├─mini-cloud-common-constant 常量共通
│ ├─mini-cloud-common-core 核心源码共通
│ ├─mini-cloud-common-data 常用类共通
│ ├─mini-cloud-common-dependencies 独立依赖共通
│ ├─mini-cloud-common-feign feign 共通
│ ├─mini-cloud-common-log 日志入参出参共通
│ ├─mini-cloud-common-log4j2 集成log4j2共通
│ ├─mini-cloud-common-rocketmq 集成rocket共通
│ └─mini-cloud-common-swagger 集成swagger共通
├─mini-cloud-component 组件
│ └─sentinel sentinel 启动包
├─mini-cloud-gateaway-center 独立网关服务
├─mini-cloud-register-center 注册中心服务
├─mini-cloud-simulate 业务场景模拟服务
│ ├─mini-cloud-simulate-goods 商品服务
│ └─mini-cloud-simulate-order 订单服务
├─mini-cloud-support 支撑服务目录,负责放入一些支撑服务
│ ├─mini-cloud-files 分布式文件服务,启动即可
│ └─mini-cloud-log-consumer 日志消费者服务
├─mini-cloud-upms-center 用户权限服务
└─readme-center 资源目录
└─resources
├─imgs 图片
├─nacos-jars jar版本nacos
├─redis redis 缓存
├─sentinel sentinel.jar
└─sql sql 文件├─mini-cloud-busi-tenant-1-login 租户1 登录模块 ├─mini-cloud-busi-tenant-2-login 租户2 登录模块 └─mini-cloud-core-processer 模拟业务端rocketmq消费服务模块
目前仅建立了2个租户登录模块,如果项目中随着租户增加,慢慢创建即可
《从0到1带大家搭建spring cloud alibaba 微服务大型应用框架(十七) saas租户集成-前端篇:vue3 + element plus前端集成多租户登录功能》
seata 我们用的是at 模式,既无侵入模式,大家也可以选择别的模式
打开server 模块,启动io.seata.server 类即可 注意:需要minicloud的共通中的register服务启动后再启动
nodejs版本需要v14版本以上,我这里用的是v16.14.0 npm源可以配置为taobao 命令:npm config set registry https://registry.npm.taobao.org