# huaweicloud-saaslanding-sample **Repository Path**: jimchen111/huaweicloud-saaslanding-sample ## Basic Information - **Project Name**: huaweicloud-saaslanding-sample - **Description**: SaaS DreamWorks工具和样例代码(SaaS使能框架)以帮助SaaS提供商(ISV)基于华为云构建SaaS应用为目的,是SaaS提供商应用中公共模块的一部分,是供伙伴参考使用的工具集和示例代码。SaaS使能框架作为SaaS和华为云之间的粘合剂,包括7个能力中心分别是租户管理中心、部署中心、升级中心、集成开发中心、运维中心、计量中心、运营中心。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master-dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 12 - **Created**: 2023-09-19 - **Last Updated**: 2023-09-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SaaS使能框架 ## 概述 SaaS DreamWorks是华为云面向合作伙伴提供应用SaaS化的能力中心。目的是加速伙伴SaaS化应用构建、高效的SaaS应用运营和运维、畅通的SaaS应用变现渠道。帮助ISV合作伙伴加快在华为云上交付 SaaS 解决方案,华为云SaaS DreamWorks有专职的专家团队支撑合作伙伴SaaS改造。包括3大模块:工具和样例代码(SaaS使能框架)、专家服务、知识库。 ![img](docs/imgs/7b2ccb0c-f6bb-46dd-90a7-d36ef5215fea.png) SaaS DreamWorks工具和样例代码(SaaS使能框架)以帮助SaaS提供商(ISV)基于华为云构建SaaS应用为目的,是SaaS提供商应用中公共模块的一部分,是供伙伴参考使用的工具集和示例代码。 ## 为什么使用 - **提供业界SaaS最佳实践**:SaaS使能框架沉淀了华为云支持海量SaaS构建的架构设计实践,帮助伙伴基于全面云化的技术解决SaaS在多租、弹性、安全、快速上线、运营运维等众多领域的技术挑战,构建SaaS最佳的技术架构并持续演进发展 - **加速SaaS交付和上市时间**:SaaS使能框架组合使用30+华为云服务、数百个API调用,降低伙伴使用组合云服务的难度,大幅缩短ISV开发时间,降低试错成本,真正解放开发团队,聚焦自己的业务逻辑和价值实现 ## 总体架构 SaaS使能框架总体架构从SaaS提供商和企业租户维度分为2个平面,管理面、租户面,其中管理面的7 个能力中心是SaaS使能框架的核心。 - 管理面根据SaaS的典型架构及功能需求,可以拆解为7个能力中心 ![](docs/imgs/8e30904d-f0fa-4b9e-9443-eb01e4cccdbf.png) SaaS提供商可能会开发多个SaaS应用,因此需要支持多应用的管理,SaaS提供商开发的应用从功能上分为控制台应用和SaaS业务应用。 - **控制台应用**是SaaS提供商的一个SaaS平台管理应用,SaaS提供商通过控制台应用完成多应用生命周期管理、业务应用上架、应用多租模型管理、应用组件管理等功能,企业租户通过控制台应用完成企业租户的组织/用户主数据管理(多应用共享) ,订阅业务应用、多应用账号授权等功能 - **业务应用**就是SaaS提供商开发的普通业务应用,如需进行企业组织/用户主数据的管理,必须通过控制台应用进行管理 ![](docs/imgs/63dc1baf-1538-4c43-b6b3-e8e9ece69649.png) - **业务应用**从租户维度需要进行应用隔离和数据隔离,也就是要支持多种多租模型 SaaS使能框架支持3种主流的多租模型,全共享模型、逻辑隔离模型、物理隔离模型。每种模型都是由应用多租模式和数据多租模式组合而成。除以上三种多租模型之外,每个SaaS业务应用都可以根据应用多租模式和数据多租模式的需求进行灵活编排。 ![img](docs/imgs/2310b9c4-88cf-4ba4-8635-ec96e8dcaf4c.png) ## 核心功能 SaaS使能框架的核心功能包括7个能力中心。 | 功能组件 | 功能简介 | | ------------ | ------------------------------------------------------------ | | 租户管理中心 | 租户管理中心支持企业租户管理、组织和用户的主数据管理、多应用生命周期管理、应用多租模型管理、多应用间的单点登录、应用账号授权管理、应用组件管理、应用组件版本管理、角色权限管理等功能。 | | 部署中心 | 部署中心支持SaaS业务应用的部署任务编排、部署任务生命周期管理、应用资源的一键下发和回收并提供短信、邮件方式通知等功能。 | | 升级中心 | 升级中心支持单组件(前端和后端)的滚动、替换、灰度、蓝绿升级,SaaS企业租户侧数据库升级,多组件的全链路灰度升级和升级任务生命周期管理等功能。 | | 运维中心 | 运维中心支持SaaS提供商侧整体资源监控和企业租户的资源监控,系统日志和操作日志生命周期管理,告警、消息通知,全链路追踪,微服务治理(限流、重试、熔断、隔离仓)等功能。 | | 集成开发中心 | 集成开发中心支持对接华为云商店并实现SaaS商品的上架、购买、续费、资源释放、数据同步等功能,支持对接华为云工业云平台并实现SaaS企业租户组织、用户的数据同步、单点登录到SaaS应用等功能,支持对接第三方应用(单体应用)等功能。 | | 运营中心 | 运营中心支持租户运营、应用运营2种场景,租户运营提供租户来源、用户活跃度、租户应用续订、退订等场景分析,应用运营提供应用续订/退订、应用订阅情况等场景分析。 | | 计量中心 | 计量中心支持基于计费的计量、基于成本优化的计量2种场景,基于计费的计量提供租户计量话单、应用API使用情况等功能;基于成本优化计量提供SaaS企业租户资源使用情况,SaaS企业租户的在线用户数量,SaaS企业租户的所有用户数量等功能。 | ## 微服务列表 | 业务中心 | 微服务中文名 | 微服务英文名 | | ------------------------------------------------- | ------------ | ----------------------- | | 租户管理中心 (TC, Tenant Center) | 租户服务 | saaslanding-tenant | | | 网关服务 | saaslanding-gateway | | | 授权服务 | saaslanding-authority | | | 认证服务 | saaslanding-auth | | 部署中心 (DC, Deployment Center) | 部署服务 | saaslanding-deployment | | | JOB服务 | saaslanding-job | | 升级中心 (UC, Upgrade Center) | 升级服务 | saaslanding-upgrade | | 集成开发中心 (IDC,Integrated Development Center) | 集成服务 | saaslanding-integrated | | 运维中心 (MC, Maintenance Center) | 运维服务 | saaslanding-maintenance | | | 日志服务 | saaslanding-log | | 计量中心(MC, Measuring Center) | 计量服务 | saaslanding-measurement | | 运营中心 (BC, Operations Center) | 运营服务 | saaslanding-operation | | SaaS 业务DEMO应用示例 | 订单服务 | saaslanding-order | | | 商品服务 | saaslanding-product | ## 开源代码仓说明 SaaS使能框架共4个代码仓,3个后端代码仓和2个前端代码仓 | 名称 | 代码仓地址 | 介绍 | | -------------------------- | ---------------------------------------------------------------------------------------| --------------------------------------------| | saaslanding-util | https://gitee.com/HuaweiCloudDeveloper/huaweicloud-saaslanding-util-sample | SaaS使能框架后端微服务组件依赖的公共代码仓 | | saaslanding | https://gitee.com/HuaweiCloudDeveloper/huaweicloud-saaslanding-sample | SaaS使能框架后端微服务组件的代码仓 | | saaslanding-ui | https://gitee.com/HuaweiCloudDeveloper/huaweicloud-saaslanding-ui-sample | SaaS使能框架前端SaaS控制台UI的代码仓 | | saaslanding-businessui | https://gitee.com/HuaweiCloudDeveloper/huaweicloud-saaslanding-businessui-sample.git | SaaS使能框架前端SaaS业务UI的代码仓 | | saaslanding-install | https://gitee.com/HuaweiCloudDeveloper/huaweicloud-saaslanding-install-sample | 初始化部署SaaS使能框架的代码仓 | ## 如何使用 - [用户使用指导手册](docs/用户使用指导手册v1.0.pdf) - [安装部署指导手册](docs/安装部署指导手册v1.0.pdf) ## 开源协议 SaaS使能框架采用 [Apache 2.0 License.](LICENSE) ## **前端组件声明** - 前端框架参考开源组件:[ngx_http_proxy_connect_module](https://github.com/chobits/ngx_http_proxy_connect_module)、[nginx](https://nginx.org)、[luesky-ui](https://github.com/bluesky/bluesky-ui)、[coffee-ui](https://gitee.com/skysong/coffee-ui)、[zmtlwzy-admin](https://github.com/zmtlwzy/zmtlwzy-admin)、[vue-okay-admin](https://gitee.com/troyzhxu/vue-okay-admin)、[vue-tony-admin](https://github.com/crlang/vue-tony-admin)、[siwei-catering-admin](https://gitee.com/kongzx/siwei-catering-admin)、[vben-admin-thin-next](https://github.com/vbenjs/vben-admin-thin-next)、[vue-pure-admin](https://gitee.com/yiming_chang/vue-pure-admin)、[abp-vnext-pro](https://doc.cncore.club)、[G6](https://github.com/antvis/G6)、[vue3-template](https://github.com/BinarCode/vue3-starter-template)、[vpage](https://github.com/TerryZ/v-page)、[@finches-ui/form](https://socket.dev/npm/package/finches-ui). ## 后端组件声明 - [Apache/Servicecomb-kie](https://github.com/apache/servicecomb-kie): SaaS使能框架使用servicecomb-kie做为默认的配置中心 - [spring-cloud-huawei](https://github.com/huaweicloud/spring-cloud-huawei): SaaS使能框架使用spring-cloud-huawei做为默认的微服务开发框架 - [lamp-cloud](https://github.com/zuihou/lamp-cloud): SaaS使能框架多租数据库操作参考lamp cloud进行构建