Coder Social home page Coder Social logo

zardonc / blade-tool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chillzhuang/blade-tool

0.0 0.0 0.0 6.35 MB

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

License: GNU Lesser General Public License v3.0

Java 99.99% Shell 0.01%

blade-tool's Introduction

Downloads Build Status Build Status Coverage Status Downloads Downloads Downloads Downloads Downloads

SpringBlade微服务开发平台

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

架构图

核心技术栈

技术栈 版本
Java 17+
NodeJS 18+
Spring 6.1.10
Spring Boot 3.2.7
Spring Cloud 2023.0.2
Spring Cloud Alibaba 2023.0.1.0
Nacos Alibaba 2.3.2
Mybatis Plus 3.5.7

工程结构

blade-tool
├── blade-core-boot -- 业务包综合模块
├── blade-core-cloud -- cloud封装模块
├── blade-core-datascope -- 数据权限封装模块
├── blade-core-develop -- 代码生成封装模块
├── blade-core-launch -- 基础启动模块
├── blade-core-loadbalancer -- 灰度服务封装模块
├── blade-core-log -- 日志封装模块 
├── blade-core-mybatis -- mybatis拓展封装模块 
├── blade-core-oss -- 对象存储封装模块 
├── blade-core-report -- 报表封装模块 
├── blade-core-secure -- 安全封装模块 
├── blade-core-social -- 第三方登录封装模块 
├── blade-core-swagger -- swagger拓展封装模块 
├── blade-core-test -- 单元测试封装模块 
├── blade-core-tool -- 单元测试封装模块 
└── blade-core-transaction -- 分布式事物封装模块 

官方信息

简介 内容
官网地址 https://bladex.cn
问答社区 https://sns.bladex.cn
会员计划 SpringBlade会员计划
交流一群 477853168 (满)
交流二群 751253339 (满)
交流三群 784729540 (满)
交流四群 1034621754 (满)
交流五群 946350912 (满)
交流六群 511624269 (满)
交流七群 298061704

官方产品

简介 演示地址
BladeX企业级开发平台 https://saber3.bladex.cn
BladeX可视化数据大屏 https://data.bladex.cn
BladeX物联网开发平台 https://iot.bladex.cn

前端项目

简介 地址
前端框架Sword(基于React) https://gitee.com/smallc/Sword
前端框架Saber(基于Vue2) https://gitee.com/smallc/Saber
前端框架Saber3(基于Vue3) https://gitee.com/smallc/Saber3

后端项目

简介 地址
核心框架项目地址 https://gitee.com/smallc/blade-tool
后端Gitee地址 https://gitee.com/smallc/SpringBlade
后端Github地址 https://github.com/chillzhuang/SpringBlade
后端SpringBoot版 https://gitee.com/smallc/SpringBlade/tree/boot/

安全手册

简介 地址
Blade安全手册 https://www.kancloud.cn/smallchill/blade-safety

技术文档

简介 地址
SpringBlade开发手册一览 https://gitee.com/smallc/SpringBlade/wikis/SpringBlade开发手册
SpringBlade常见问题集锦 https://sns.bladex.cn/article-14966.html
SpringBlade基于Kuboard部署K8S https://kuboard.cn/learning/k8s-practice/spring-blade/
SpringBlade基于Rainbond部署 https://www.rainbond.com/docs/micro-service/example/blade

免费公开课

开源协议

LGPL(GNU Lesser General Public License

LGPL是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。

但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。

用户权益

  • 允许以引入不改源码的形式免费用于学习、毕设、公司项目、私活等。
  • 特殊情况修改代码,但仍然想闭源需经过作者同意。
  • 对未经过授权和不遵循 LGPL 协议二次开源或者商业化我们将追究到底。
  • 参考请注明:参考自 mica:https://github.com/lets-mica/mica ,blade-tool:https://github.com/chillzhuang/blade-tool 。另请遵循 LGPL 协议。
  • 注意:若禁止条款被发现有权追讨 19999 的授权费。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.