企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

SpringBlade 是一个由商业级项目升级优化而来的SpringCloud分布式微服务架构、SpringBoot单体式微服务架构并存的综合型项目,采用Java8 API重构了业务代码,完全遵循阿里巴巴编码规范。采用Spring Boot 2 、Spring Cloud Hoxton 、Mybatis 等核心技术,同时提供基于React和Vue的两个前端框架用于快速搭建企业级的SaaS多租户微服务平台。

需要获取文章中的源码与文档的小伙伴,记得一键三连哦
 添加V❥:tulingQY 备注(888)可以免费获取到哦

SpringBlade微服务开发平台

  • 采用前后端分离的模式,前端开源两个框架:Sword (基于 React、Ant Design)、Saber (基于 Vue、Element-UI)
  • 后端采用SpringCloud全家桶,并同时对其基础组件做了高度的封装,单独开源出一个框架:BladeTool
  • BladeTool已推送至Maven中央库,直接引入即可,减少了工程的臃肿,也可更注重于业务开发
  • 集成Sentinel从流量控制、熔断降级、系统负载等多个维度保护服务的稳定性。
  • 注册中心、配置中心选型Nacos,为工程瘦身的同时加强各模块之间的联动。
  • 使用Traefik进行反向代理,监听后台变化自动化应用新的配置文件。
  • 极简封装了多租户底层,用更少的代码换来拓展性更强的SaaS多租户系统。
  • 借鉴OAuth2,实现了多终端认证系统,可控制子系统的token权限互相隔离。
  • 借鉴Security,封装了Secure模块,采用JWT做Token认证,可拓展集成Redis等细颗粒度控制方案。
  • 稳定生产了一年,经历了从Camden -> Greenwich的技术架构,也经历了从fat jar -> docker -> k8s + jenkins的部署架构
  • 项目分包明确,规范微服务的开发模式,使包与包之间的分工清晰。

架构图

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

工程结构

SpringBlade
├── blade-auth -- 授权服务提供
├── blade-common -- 常用工具封装包
├── blade-gateway -- Spring Cloud 网关
├── blade-ops -- 运维中心
├    ├── blade-admin -- spring-cloud后台管理
├    ├── blade-develop -- 代码生成
├    ├── blade-resource -- 资源管理
├    ├── blade-seata-order -- seata分布式事务demo
├    ├── blade-seata-storage -- seata分布式事务demo
├── blade-service -- 业务模块
├    ├── blade-desk -- 工作台模块 
├    ├── blade-log -- 日志模块 
├    ├── blade-system -- 系统模块 
├    └── blade-user -- 用户模块 
├── blade-service-api -- 业务模块api封装
├    ├── blade-desk-api -- 工作台api 
├    ├── blade-dict-api -- 字典api 
├    ├── blade-system-api -- 系统api 
└──  └── blade-user-api -- 用户api 

BladeX 工作流一览

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

Sword 界面一览

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

Saber 界面一览

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

监控界面一览

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

目前源码已经全部上传完毕:

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

如果需要这份源码的小伙伴

需要获取文章中的源码与文档的小伙伴,记得一键三连哦
 添加V❥:tulingQY 备注(888)可以免费获取到哦

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SAAS多租户架构图通常由以下组件组成: 1. 客户端:客户端是用户使用SAAS应用程序的界面,可以是Web浏览器、移动应用程序等。 2. 负载均衡器:负载均衡器用于分发客户端请求到后端的多个应用程序实例,以实现负载均衡和高可用性。 3. 应用程序服务器:应用程序服务器是SAAS应用程序的核心组件,它处理客户端请求并执行业务逻辑。多个应用程序服务器可以水平扩展以处理更多的请求和用户。 4. 数据库:数据库用于存储SAAS应用程序的数据,包括用户信息、配置数据、业务数据等。通常使用关系型数据库或者NoSQL数据库来支持数据存储。 5. 多租户引擎:多租户引擎是实现SAAS多租户架构的关键组件,它负责管理不同租户的数据隔离、安全性和定制化需求。它可以通过数据库模式分离、数据过滤或者虚拟化等方式来实现多租户隔离。 6. 身份验证和访问控制:SAAS应用程序通常需要进行身份验证和访问控制,以确保只有授权的用户可以访问特定的数据和功能。这可以通过用户身份验证、访问令牌、角色权限等方式来实现。 7. 集成服务:SAAS应用程序可能需要与其他系统进行集成,如第三方支付服务、邮件服务、短信服务等。集成服务可以通过API接口、消息队列等方式来实现。 8. 监控和日志:SAAS应用程序需要进行监控和日志记录,以实时监控系统的性能和健康状况,并记录关键事件和错误日志,用于故障排查和系统优化。 这是一个基本的SAAS多租户架构图,不同的SAAS应用程序可能会有一些定制化的组件或者扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值