「如何实现流动式软件发布」线上课堂开课啦,快来报名参与课堂抽奖吧~ 了解详情
写点什么

SaaS 架构成熟度模型

2008 年 3 月 03 日

Dharmesh Shah 最近撰写了有关“软件作为服务”即 SaaS 的架构成熟度模型的文章。之前 Gianpaolo Carraro 曾提出可伸缩性、多租户(multi-tenancy)与通过配置进行定制(customization throught configuration)是 SaaS 架构应满足的要求,Dharmesh 从这一点出发,提出了关于 SaaS 架构成熟度模型的 5 个级别——从“混乱”到“乌托邦“,并针对每个级别背后的经济考虑提出了自己的想法。

  • 第 0 级(混乱):每次新增一个客户,都会新增软件的一个实例。
  • 第 1 级(受控的混乱):所有客户都运行在软件的同一个版本上,而且任何的定制化都通过修改配置来实现。
  • 第 2 级(多租户 [multi-tenant]、高层建筑 [Highrise]):所有的客户都已经可以在软件的同一个版本上运行了,而且他们都在同一个“实例”上运行。
  • 第 3 级(多租户, 扩建 [Build-Out]):此时你已经拥有了多租户、单一版本的软件模型。不过你还是可以通过硬件扩展(scale-out)的方式来进行扩充。
  • 第 4 级(乌托邦):如同第 3 级,除非你可以找出有效的方式,以在不同的“实例”上运行不同版本的软件。

Gianpulo 原先的成熟度模型分为:定制版本和每个客户一个实例、所有的客户运行同一个版本的软件但是各自运行在不同的实例之上、让客户运行单一版本的软件而且具备可伸缩的实例。Dharmesh 添加了“乌托邦”级别,在这个级别中可以轻松地为任何给定的客户发布“沙箱(sandbox)”实例。

说到这个模型,Dharmesh 的主要观点是:

以 SaaS 起步的创业公司的重大优势之一是:通过多租户的方式可以在多个维度上达到更加经济的效果。但是有这样的机会不等于每个创业公司都能够做得到。

经济优势背后的关键,是要使用能够“通过配置进行定制”的架构以及聪明的数据分区模式。做不到这两点,就很难跨越第 1 级(受控的混乱)并认识到多租户方式的效率所在。

Nole Huelsenbeck 认为该成熟度模型也许不适合开发人员所在组织的业务模型:

难道价格点 [译注 1] 和整个的市场情况不会影响最后所达到的级别吗?在网上像 Quicken 这类应用也许还有一点可能实现定制化,因此达到第三或第四级;可如果我是财富 500 强的公司,我想 Salesforce.com 一定会采取第 0 级的方式来争取我的业务。

评论者“brk”观察到:在 SaaS 成熟度模型背后,当经济成本上升到很高的程度之后,会伴随有一些巨大的风险。当所有客户都共享同样的软件、硬件(无论是虚拟的还是物理的)和管理时,一个客户身上产生的任何小问题,都有可能会影响到整个的客户群体。

译注 1:价格点(Price Point):简称 PP 点,即对于该门店或业态的某类商品而言,最容易被顾客接受的价格或价位,确定了 PP 点后,备齐在此 PP 点价位左右的商品,就会给顾客造成商品丰富,价格便宜的感觉和印象。

查看英文原文: SaaS Architecture Maturity Model

2008 年 3 月 03 日 21:176189
用户头像

发布了 479 篇内容, 共 130.0 次阅读, 收获喜欢 33 次。

关注

评论

发布
暂无评论
发现更多内容

吹爆!阿里高工甩出内部强推Redis全栈笔记,Github已获赞78.9k

程序员小毕

Java 数据库 redis 架构 面试

压缩微指令长度方法

若尘

计算机组成原理 六月日更

B 站游戏技术平台微服务通用网关实践

bilibili游戏技术

微服务架构 openresty APISIX 通用网关

做好项目管理,项目经理应当掌握哪些技能?

万事ONES

项目管理 ONES 项目经理

矩阵分解推荐算法(十八)

数据与智能

推荐算法 矩阵运算

Scrum | 你需要知道这些

Python测试和开发

项目管理 Scrum 敏捷

阿里实录:一个优秀的分布式系统该如何去设计?

Java架构师迁哥

CHM源码阅读(jdk1.7)

周周

百度智能云以端边云全面智能化的天工AIoT平台2.0打造智能物联网解决方案

百度大脑

人工智能 物联网

高性能计算在人工智能(AI)智药中的应用

北鲲云

快手严厉整治违规商业内容:必须构建平台良性生态链

石头IT视角

带老弟做项目,凉了

程序员鱼皮

Java c++ Python JavaScript 技术

B站收藏 12.5w+!GitHub 标星 6.6k+!这份文档拯救了我薄弱的计算机基础

Java架构师迁哥

JSON 数据格式该怎么使用

网络安全学海

json 网络安全 安全 信息漏洞 渗透测试

Django搭建个人博客网站---模块划分

IT蜗壳-Tango

6 月日更

5分钟速读之Rust权威指南(三十)多线程

码生笔谈

rust

七种方式教你在SpringBoot初始化时搞点事情

L

Java

mysql的存储引擎知多少

卢卡多多

KV存储引擎 MySQL 数据库 六月日更

内卷把我逼成了“扫地僧”把Github上所有面试题都整理了一遍,足足24W字!

Java架构师迁哥

敏捷项目管理实践,如何正确使用故事点预估工作量?

万事ONES

项目管理 敏捷开发 ONES

前端 JavaScript 获取字符串中重复次数最多的字符

编程三昧

JavaScript 前端 数组 指针思想

阿里内部不外传的50万字Java面试手册,首次开放,一天遭狂转10w次

Java架构师迁哥

极光统一消息系统UMS新版上线!多维数据统计分析助推运营增长

极光开发者

百度智能云在AI云服务市场四度夺魁!

百度大脑

人工智能 云服务

【得物技术】得物社区实践

得物技术

golang dubbo dubbo-go 社区 融合

敏捷项目管理是不是可以缩短项目周期,或者说“敏捷就是快”?

万事ONES

项目管理 敏捷开发 ONES 项目管理工具

极光开发者周刊【No.0625】

极光开发者

Vue源码学习 | 从源码中学习Javascript技巧

devpoint

JavaScript Vue 6 月日更

北鲲云:浅谈云计算与高性能计算的区别与联系

北鲲云

【熬夜整理近百份大厂面经】2022校招提前批面经总结分享(腾讯、字节、阿里、百度、京东等招聘信息+必考点+简历书写)

学无止境的阿奔

c++ 面试 后端开发 程序员、 秋招

AI云市场的繁盛之夏:AI花开果熟,百度抢先品尝第一口甜

脑极体

SaaS架构成熟度模型-InfoQ