部署 Spring Cloud Blade

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

通过源码部署 Spring Cloud Blade

一、部署 Nacos

通过开源应用商店部署 ,在开源应用商店中搜索 Nacos单机 并选择安装 2.1.2 版本。

通过开源应用商店部署 Redis,在开源应用商店中搜索 Redis 并选择安装 5.0.7 版本。

三、部署 Sentinel Dashboard

通过开源应用商店部署 Sentinel Dashboard,在开源应用商店中搜索 Sentinel-Dashboard 并选择安装 1.8.6 版本。

  1. 初始化表结构和数据:

五、部署 Blade 后端服务

  1. 基于源码创建组件,填写以下信息:
  1. 检测出多模块构建,进入多模块构建页面
tip
  1. 创建前,在多模块构建页面 -> 右侧修改按钮 -> 修改每个模块的启动命令,如下。
  2. 创建后,删除每个组件的默认端口,为每个组件添加对应的新端口和端口别名并打开端口的对内服务,如下。
  3. 修改完成后构建组件。
  1. 编辑依赖关系,切换到 编排模式 拖动组件进行依赖关系建立。

部署 Spring Cloud Blade - 图2

  1. 进入 Nacos 组件内 -> 端口 -> 打开 端口的对外服务,访问 Nacos 并登录,默认用户密码 nacos/nacos,创建以下配置文件。

创建 blade.yaml 配置文件

blade.yaml

spring配置

项目模块集中配置

blade:

通用开发生产环境数据库地址(特殊情况可在对应的子工程里配置覆盖)

datasource: dev: url: jdbc:mysql://127.0.0.1:3306/blade?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8 username: root password: root ```

info

更新或重启除 Nacos Mysql Redis Sentinel Dashboard 之外的所有组件。

  1. 基于源码创建组件,填写以下信息:
部署 Spring Cloud Blade - 图4caution
  1. 进入 Saber 组件内 -> 端口 -> 删除默认端口,新增 8080 端口并打开对外服务。
  2. 编辑依赖关系,切换到 编排模式 拖动组件进行依赖关系建立,将 Saber 依赖 blade-gateway 并更新组件。
  3. 使用默认域名访问 Saber UI 并登录。

最终部署拓扑图