SAAS 系统设计(01)—— 重要模块设计

最近在攻克 SAAS 从 0 到 1 的架构设计,希望把已有的能力 SAAS 化,做个代练行业垂类的 SAAS,可以连通行业上下游。

通常的 SAAS 是针对一些可以标准化的场景,有通用的租户和针对的解决方案,做出 SAAS 平台后做推广。比如飞书、友盟等,它们是先有产品,构建 SAAS 的租户,再以用户为基础,让开发者基于 SAAS 平台,自定义开发产品。

他们也有两种商业模式。

  • 泛类通过 SAAS 主功能和三方产品盈利。

比如飞书、钉钉、企微,他们租户很广泛,所有公司、组织都可以用,它们 SAAS 主功能有组织架构、平台权限、IM 等。

盈利点包括:

  1. 大客户定制化,中小客户按人头收费。
  2. 通过 SAAS 平台的特点吸引租户(比如飞书是云文档 + OKR),收取开发者佣金。

这些涉及的三方产品非常多,飞书自己不会都做,他只需做好开发者系统,鼓励开发者入驻开发,它主要提供用户,SAAS 平台作为流量入口。

  • 垂类通过做好自身产品盈利

比如友盟,SAAS 主功能是数据收集和分析。它所有的产品都是自身开发,基于 SAAS 主功能扩展的。

友盟这种,所有参与人员都是自己,没有第三方开发者概念。它的产品更垂,受众更小。

我要做的 SAAS 更特殊,友盟和飞书起码是先有产品,再吸引用户,我这是已有用户和供应链,差个 SAAS 把他们关联之前,我们希望 SAAS 为我们提供模块化的支持,业务特点更像友盟。

所以我们 SAAS 有以下边界

  1. 垂类行业的 SAAS,用户群体固定,对有需求的人是刚需。
  2. 靠自己做好产品挣钱,几乎没有三方开发者。
  3. 几乎都是根据行业定制化的产品。

这个 SAAS 最大的作用,就是把前后端服务模块化,提高产研效率。

SAAS 主站、开发者、产品

SAAS 主站是 SAAS 自身的系统,租户无需开通任何产品就有的功能,比如组织架构、员工、平台级权限管理,未来我们还会做钱包、企微基础能力。

开发者平台,是在 SAAS 申请成为开发者后,自行编码应用,嵌入到 SAAS 中,可以通过调用 SAAS OpenApi 的方式获取商户在 SAAS 主站上信息,完整自己业务闭环。

产品,也叫解决方案。由多个应用打包,每个应用内有多个资源。

比如飞书中的销帮帮,这是产品,它里面每个菜单,都是应用,菜单中的每个页面,都是资源。(其实资源除了页面还有数据、功能,就是 RBAC 标准的一套,为了方便理解, 只说菜单资源)

这里应用只代表功能,不包含数据,多个功能模块(应用)打包,可以任意组成新的产品。

比如做个销忙忙产品,把这里 CRM 应用挪过去,再加点别的数据菜单就行了。

但是销帮帮和销忙忙的数据是隔离的。

后端应用分层和基础组件

后端服务分为 base、admin、app 层,所有应用的代码在 base 中,SAAS 管理后台是 admin,所有对外和租户门户服务是 app。

行业本身也有个最大的 admin,管所有行业内的租户,这个是开发者自己开发的。

基础组件有

  1. saas-base,saas 的 base 服务,和数据库打交道那层。
  2. saas-application,组织架构、钱包等基础组件,都以内部应用的形式嵌入。
  3. saas-open,SAAS 对三方应用开放的接口,比如获取组织架构信息、员工信息等,走 oauth2 授权。
  4. saas-admin,SAAS 管理后台,负责打包应用成为产品、审核应用和权限、商户入驻申请等。
  5. saas-app,租户门户的后台,租户的产品展示在上面。

这篇概念性的比较多,有点难理解,下一遍重点说说技术实现细节。

相关推荐
码起来呗3 小时前
基于SpringBoot的中华诗词文化分享平台-项目分享
java·spring boot·后端
uhakadotcom3 小时前
轻松入门无服务器开源框架:OpenFaaS 与 Knative 全面解析与实战示例
后端·面试·github
uhakadotcom3 小时前
字节跳动“扣子空间”AI智能体全解析
后端·面试·github
muyouking114 小时前
5.Rust+Axum:打造高效错误处理与响应转换机制
开发语言·后端·rust
Freeking10244 小时前
【Spring】依赖注入的方式:构造方法、setter注入、字段注入
java·后端·spring
songroom4 小时前
Rust: 从内存地址信息看内存布局
开发语言·后端·rust
uhakadotcom4 小时前
用最简单的方式教你用Python搭建第一个MCP服务器(附详细代码示例)
后端·面试·github
uhakadotcom4 小时前
一篇文章带你玩转服务器端追踪:原理、优势与实战案例
javascript·后端·面试
刘大猫264 小时前
Arthas sm(查看已加载类的方法信息 )
java·人工智能·后端