# 微服务研发引擎

# 概述

  • 微服务研发引擎是一个面向微服务基础工具包,一键依赖则提供基础的微服务技术能力
  • 帮助微服务用户更稳定、更便捷、成本更低的构建微服务体系
  • 提供基础的微服务组件和公共组件能力,提供出核心的组件包,为业务上层提供一键平台化、微服务化的能力
  • 此为高级工程师和资深架构师的沉淀体现,为业务开发人员规避常见开发风险

# 针对人群

  • 项目经理
  • 技术经理
  • 架构师

# 业务架构图


架构描述:

  • 基于ACP支撑微服务基础架构进行微服务支撑
  • 基于springboot和cloud集成,封装提供更强大的微服务能力

# 产品优势

# 天然的微服务框架

过去复杂、庞大的管理信息系统,以更小颗粒度、更敏捷的服务方式提供。不同的应用可以独立部署与互相互相隔离,服务之间通过轻量级 API 进行通信。

# 提供高可用性健壮性

引擎提供的实例,具备完善的监控和运维,优化 开源中间件大量可用性痛点,基础工具包提供强健基础的微服务研发能力,具有分布式,高可用,稳定性等特点。

# 集成多种分布式技术

分布式过程中的服务熔断、分布式事务、分布式定时任务、分布式限流等通用的分布式技术集成,提高应用的稳定性,满足业务场景需求。

# 业务无侵入性

应用代码、配置、镜像无须修改即可接入治理中心,同时提供实体到数据库的自动生成,多数据源切换,微服务异常、日志、自定义注解、SwaggerAPI、Shiro 权限、通过数据操作等。

# 拥抱容器和云原生

自动集成镜像生成工具,版本管理工具,打包工具等,一键生成镜像,Kubernetes 集群直接发布接入,多种打包和生成方式,多平台发布集成。

# 权限系统无缝集成

一键接入权限系统,提供本地登陆、单点登陆、自定义登陆等多种方式,默认集成多登陆页面、异常页面,统一异常处理,更专注业务需求开发。

# 等保三级安全集成

支持 XSS 跨站点攻击、SQL 注入、CROS 攻击等防护,记录用户的操作行为、查询行为、点击行为、业务流水、 交易、数据库操作、系统的异常待进行记录, 配合业务系统审计处理。

# 功能列表

  • 分布式框架: 过去复杂、庞大的管理信息系统,以更小颗粒度、更敏捷的服务方式提供。不同的应用可以独立部署与互相互相隔离,服务之间通过轻量级 API 进行通信
  • 公共依赖(配置/公共代码):简化了大量项目配置和 maven 依赖,让您更专注于业务开发,独特的分包方式,代码多而不乱
  • 服务容器化: 直接生成镜像并上传到仓库而不需要 Dockerfile 文件或者其他插件,支持将资源文件和类分层打包,可以大幅度提升生成镜像的速度
  • 代码生成器: 智能代码生成器,在线及灵活配置,一键生成前后端代码,生成 docker 和 k8s 容器支持,大幅度提升开发效率
  • MyBati 通用操作: 适用于复杂业务开发,结合 MyBatis 优点及开发习惯,并提取通用 MyBatis 方法
  • Shir 多平台登陆认证:主要采用 shiro+jwt+redis ,支持单点登录,支持 JWT 规范、支持登录踢出、支持 token 失效时间配置
  • 多登陆集成: 登陆集成短信/验证码/域登陆/人脸登陆/第三方登陆扩展
  • 按钮权限: 应用权限的控制力度到按钮级别,应用多种业务场景的按钮权限
  • 多服务集成: 传统业务系统与分布式业务服务之间集成,支持 dubbo、http、socket 等
  • 多平台发布集成: 多平台发布集成多种发布形式,便于适用于不同的场景,比如云服务器、tomcat、docker、k8s、compose 等
  • 本地调试: 提供多种服务本地断点调试方案,便于开发过程调试
  • 异常处理: 分布式异常处理方式,服务异常统一由后台抛出,由前端获取,对业务开发过程异常处理是透明,便于分布式服务与前端整合
  • 日志处理: 提供分布式日志配置,单机服务器日志处理,路径、名称、保存时长等都有统一的规范
  • 缓存使用: 配置了默认的缓存方案和使用方式,系统默认使用 redis 缓存,并自定义缓存注解,注解自定义缓存生命周期时长
  • 日志埋点: 提供场景是审计日志,记录用户的操作行为、查询行为、点击行为、业务流水、 交易、数据库操作、系统的异常待进行记录, 配合业务系统审计处理
  • 多数据库源: 提供多数据库源支持和接入,以及分布式事务处理
  • 配置加密: 提供配置加密处理为了更好的进行审计和安全的配置,权限严格的项目进行加密处理
  • 表单提交校验: 提供基础的表单提交校验,重复提交处理等功能,业务直接获取异常,提供统一的异常提示,优化用户体验
  • XSS 攻击防护: 防止 XSS 攻击,通过 XssFilter 类对所有的输入的非法字符串进行过滤以及替换
  • SQL 注入防护: SQL 注入、审计、验证码、密码强度,盗链
  • 国际化支持: 支持多语言,开发国际化项目非常方便
  • 多种环境部署教程: 支持多种环境,比如 linux 、docker、compose、k8s、windows 等,提供一键部署及启动机制和脚本
  • 页面代码转换: 支持注释式代码转换插件,及自定义代码转换插件,前后端公共变量转换,页面直接获取

# 分布式技术

  • 分布式服务熔断: 解决服务与服务之间的依赖性, 故障会传播,会对整个微服务系统造成灾难性的问题
  • 分布式事务: 提供基于可靠消息服务、多数据库源等分布式事务解决方案
  • 分布式配置中心: 提供轻量级分布式配置管理平台,拥有轻量级、秒级动态推送、多环境、跨语言、跨机房、配置监听、权限控制等
  • 分布式定时任务: 提供轻量级无中心化解决方案,使用 jar 包的形式提供分布式任务的协调服务,分布式调度解决方案
  • 分布式锁: 分布式锁定可确保您的方法无法从多个微服务集群并行运行
  • 分布式限流: 提供接口级别和方法级别的限流,避免服务压力过大而出现宕机,内存过高等异常
  • 分布式事务: 集成多种分布式事务整合的能力,比如可靠消息,seata等整合方案

# 其它