Skip to content

基于Spring Boot、Spring Cloud Alibaba的微服务开发框架

License

Notifications You must be signed in to change notification settings

gordianyuan/macula-boot

 
 

Repository files navigation

Macula Boot

基于Spring Boot、Spring Cloud Alibaba的微服务开发框架

概述

平台简介

Macula是一个微服务应用开发平台,主要包括三大部分:MaculaBoot、MaculaCloud和MaculaCloudAdmin。

  • MaculaBoot是微服务应用开发所需要的开发框架(如SpringCloudAlibaba、SpringCloudTecent等),基于众多开源产品进行甄选后轻度封装而成。
  • MaculaCloud是一个微服务架构的通用技术服务体系,一方面可集成对接各大云厂商的微服务治理体系(如腾讯云TSF、阿里云EDAS、百度云CNAP等), 另一方面提供大量内置可复用的通用技术服务(如系统管理、消息推送、资源存储、ID生成、任务调度等)。
  • MaculaCloudAdmin是基于VUE的前端项目,与MaculaCloud配套,提供管理界面功能。使用Macula进行微服务架构的应用平台开发,一方面可以统一技术栈,降低管理与维护成本;另一方面可以避免重复造轮子,提升开发效率。

整体架构

Macula的整体架构如下图所示:

image

主要功能

Macula Boot

macula-boot-parent                                   POM父模块,所有项目的parent
macula-boot-commons                                  通用模块,提供返回结构体、助手类、异常封装、常量等
macula-boot-docs                                     文档
macula-boot-starter
    01. macula-boot-starter-mapstruct                对象转换
    02. macula-boot-starter-crypto                   加解密模块
    03. macula-boot-starter-cache                    多级缓存
    04. macula-boot-starter-redis                    REDIS(基于Redisson)
    05. macula-boot-starter-lock4j                   分布式锁
    06. macula-boot-starter-idempotent               幂等
    07. macula-boot-starter-leaderelection           基于Redis的Leader选择器
    08. macula-boot-starter-mybatis-plus             MyBatis Plus
    09. macula-boot-starter-jpa                      Spring Data JPA集成
    10. macula-boot-starter-sender                   基于本地数据库发送MQ消息(先落库再异步发MQ)
    11. macula-boot-starter-rocketmq                 RocketMQ
    12. macula-boot-starter-liteflow                 可编排的组件引擎
    13. macula-boot-starter-statemachine             基于Spring StateMachine的状态机
    14. macula-boot-starter-security                 基于Token的安全校验
    15. macula-boot-starter-springdoc                Swagger Doc v3
    16. macula-boot-starter-web                      WEB
    17. macula-boot-starter-feign                    Feign定制,使用OkHTTP
    18. macula-boot-starter-seata                    分布式事务
    19. macula-boot-starter-oss                      资源中心(minio/aliyun/cos/aws s3/本地)
    20. macula-boot-starter-tinyid                   ID生产
    21. macula-boot-starter-system                   接入菜单和权限等系统服务
    22. macula-boot-starter-task                     基于xxljob等的定时任务(类似阿里云的ScheduleX)
    23. macula-boot-starter-retry                    重试框架
    24. macula-boot-starter-dubbo                    基于Dubbo的RPC服务
    25. macula-boot-starter-cloud                    基于Spring Cloud的RPC服务
        1. macula-boot-starter-gateway               网关定制,基于Oauth2认证,权限控制也集中在网关
        2. macula-boot-starter-alibaba               基于alibaba spring cloud体系(nacos、sentinel、seata)
        3. macula-boot-starter-alibaba-scg           基于slibaba的gateway定制
        4. macula-boot-starter-tencent               基于tencent的polarismesh服务治理体系
        5. macula-boot-starter-tecent-scg            基于tencent的gateway定制
        6. macula-boot-starter-tsf                   基于TSF的服务治理体系
        7. macula-boot-starter-tsf-scg               基于TSF的网关定制

Macula Cloud

详见Macula Cloud项目

Macula Cloud

详见Macula Cloud Admin项目

编译说明

编译的时候需要指定deploy这个profile,否则revision不会处理

mvn clean install -DskipTests=true -Pdeploy

技术原理

Macula整体的技术交互与应用原理如下图所示:

image

说明:Macula特别适用于多产品线(一个产品线对应一个应用平台)的研发团队。

License

Macula Boot and Macula Cloud is Open Source software released under the Apache 2.0 license.

About

基于Spring Boot、Spring Cloud Alibaba的微服务开发框架

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 42.3%
  • CSS 25.7%
  • Vue 20.2%
  • JavaScript 9.9%
  • SCSS 1.2%
  • HTML 0.5%
  • Other 0.2%