项目

微服务解决方案:概述

注意: 您必须拥有 ABP Business 或更高级别的许可才能创建微服务解决方案。

本文将介绍微服务解决方案模板为您提供了哪些功能。

整体架构概览

ms-overall-architecture 图:解决方案整体架构示意图(为简洁起见,未展示所有关联)

预安装的库与组件

以下所有库和组件均已预安装并针对开发生产环境完成配置。创建解决方案后,您可以根据需要修改移除其中的大部分内容。

预配置的核心功能

解决方案中已为您构建并预配置了以下功能。

  • 身份验证 完全遵循最佳实践进行配置:
    • 为微服务和应用程序配置 JWT 持有者令牌认证
    • 若选择了 MVC UI,则配置 OpenId Connect 身份验证
    • 若选择了 SPA UI(Angular 或 Blazor WASM),则实现了授权码流程
    • 其他流程(资源所有者密码、客户端凭证...)在需要时可轻松使用。
  • 权限(授权)、设置功能本地化 管理系统均已预配置,开箱即用。
  • 后台作业系统 并集成了 RabbitMQ
  • 已安装 BLOB 存储系统,包含数据库提供程序和独立的数据库。
  • 实时数据库迁移系统(部署新版本时,服务会自动迁移其数据库架构)
  • 通过 docker-compose 配置基础设施依赖,以便在本地环境中运行解决方案。
  • 包含 Helm 图表,用于将解决方案部署到 Kubernetes
  • Swagger 身份验证已配置,可用于测试需要授权的 HTTP API。
  • 分布式事件总线配置了**收件箱与发件箱模式**。

基础模块

解决方案已预安装并配置了以下核心模块:

  • 账户模块:用于用户身份验证(登录、注册、双因素认证等)
  • 身份模块:用于管理角色和用户
  • OpenIddict(核心部分):用于实现 OAuth 身份验证流程

除此之外,功能管理权限管理设置管理 模块也作为 ABP 的基础功能模块预装。

可选模块

以下模块为可选包含项,您可以根据需要选择安装:

UI 主题

解决方案已预配置 LeptonX 主题。您可以选择一个配色方案(系统、浅色或深色)作为默认主题,同时最终用户可以在运行时动态切换。

其他选项

在创建微服务解决方案时,启动模板会询问您的一些偏好设置。

数据库提供程序

新建微服务解决方案时,提供两种数据库提供程序选项:

UI 框架

解决方案带有一个主 Web 应用程序,提供以下 UI 框架选项:

  • (解决方案中不包含 Web 应用程序)
  • Angular
  • MVC / Razor Pages UI
  • Blazor WebAssembly
  • Blazor Server
  • MAUI with Blazor (Hybrid)

移动应用程序

如果您需要,解决方案可以包含一个带有专属 API 网关的移动应用程序。该移动应用程序已完全集成到系统中,实现了身份验证(登录)和其他 ABP 功能,并包含一些可供您使用和参考的示例界面。可用选项如下:

  • (解决方案中不包含移动应用程序)
  • MAUI
  • React Native

多租户与 SaaS 模块

SaaS 模块 作为一个可选选项提供。当您选择它时,多租户系统 会自动配置。否则,系统将不包含任何多租户开销。

另请参阅


在本文档中