最近公司准备整一个SaaS的东西。有幸参入这一块东西的搭建,借着這个机会也重新好好梳理了一下对SaaS的认识。今天整理一下!

一、云计算与SaaS

说起SaaS,就得先说说云计算了。关于云计算分为三层,基础设施在最下端,平台在中间,软件在顶端,分别是分别是Infrastructure-as-a-Service(IaaS),Platform-as-a-Service(PaaS),Software-as-a-
Service(SaaS)。這里虽说主要是要记录一下SaaS架构的理解,随便说说IaaS,PaaS,SaaS分别是个啥东西。

IaaS: Infrastructure-as-a-Service(基础设施即服务)有了IaaS,你可以将硬件外包到别的地方去。IaaS公司会提供场外服务器,存储和网络硬件,供其他软件公司租用;

PaaS: Platform-as-a-Service(平台即服务)某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。

SaaS: Software-as-a-Service(软件即服务)第三层也就是所谓SaaS。被用户直接接触,大多是通过网页浏览器来接入。任何一个远程服务器上的应用都可以通过网络来运行,就是SaaS了。

二、有关SaaS的理解

2.1、SaaS架构成熟度模型的5个级别——从“混乱”到“乌托邦“

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

2.2、SaaS的关键点:多租户;硬件虚拟化;

2.3、web 应用程序与SaaS 应用程序对比,SaaS需要多考虑的方面

  • 1,应用程序必须支持多租户

  多租户可以分为几个不同的类别(如列表下方的图所示):
    1.1,云中的简单虚拟化,其中只对硬件进行共享。
    1.2,共享应用程序,对每个租户使用不同的数据库。
    1.3,共享应用程序和数据库(效率最高,真正的多租户)。

  • 2,应用程序必须具备某种程度的自助注册功能。

  2.1, 应用程序必须具备某种程度的自助注册功能,即便仅仅是一种请求机制,即产生一种向应用程序添加租户的业务流程。

  • 3,必须具备订阅/记账机制。

    3.1, 必须提供订阅和记账机制。因为 SaaS 应用程序被设计为根据各种因素进行支付,如每个租户的用户数、应用程序选择,还可能包括使用时间等,必须通过某种方式来跟踪和管理
应用程序的使用,然后生成可由租户管理人员访问的记账信息

  • 4,应用程序必须能够有效地扩展。

    4.1, 必须能够随着订阅的增长进行扩展

  • 5,必须能够监视、配置和管理应用程序和租户。

   5.1, 必须提供治理和应用程序管理功能,以监视、配置和管理应用程序及所有租户

  • 6,必须有一种机制能够支持惟一的用户标识和身份验证。
  • 7,必须有一种机制能够支持对每个租户进行某种程度的自定义。

2.4、性能问题

  • 1,横向/纵向扩展

  1.1,横向扩展通常用于应用服务器层。

  1.2,纵向扩展通常用于数据库层。

  • 2,数据库集群化
  • 3,地理、分区和同步
  • 4,独立的数据库

2.5、需要考虑的安全性问题

  • 1, 阻止一个租户查看另一个租户的数据作为一个基本要求;
  • 2, 这些其他应用程序可以是需要访问或共享数据的内部应用程序;也可以是对数据进行挖掘以获得趋势的分析或报告编写工具。(即使是数据库管理员使用的实用工具也会引起安全问题,如果租户可以使用它们访问,或者更糟,操作不属于它们的数据的话。

2.6、选择技术栈

2.7、SaaS分层:呈现层,调度层,业务层,数据层;

2.8、SaaS计费

  SaaS系统是一种租凭方式的软件销售手段。收费一定要遵守“按需订阅,按量付费”的原则。其中付费点有三个维度:一个是计算量、存储量和时间

暂时对SaaS的大概理解就是这麽多,后续实施再进一步完善。最后感谢网络,感谢前辈们的无私分享!

转载于:https://www.cnblogs.com/peak2013/p/7381265.html

云技术-SaaS架构初步理解相关推荐

  1. 【华为云技术分享】深度理解AI概念、算法及如何进行AI项目开发

    莫衷一是的AI 做了多年的业务工作,一直希望能够用机器代替人力,把人从繁琐的具体工作中解放出来,从技术发展看AI或许可以支撑实现这个愿景. 但最近关于AI的讨论和争论比较多,学术上,纽约大学的Gary ...

  2. 【华为云技术分享】快速理解spark-on-k8s中的external-shuffle-service

    [摘要] external-shuffle-service是Spark里面一个重要的特性,有了它后,executor可以在不同的stage阶段动态改变数量,大大提升集群资源利用率.但是这个特性当前在k ...

  3. 栋的月结 | 第一回合(定期更新、动态、架构、云技术、算法、后端、前端、收听/收看、英文、书籍、影视、好歌、新奇)[含泪总结.. 憋泪分享!]

    开篇词 大家好!以下是我在 2020 年 1 月 1 日至 31 日的所见.所闻.所学和所悟. 现在,我把它们安利给你们. 定期更新 原创专栏: 栋的周评 一文搞定 Linux 管理员手册:既简单又深 ...

  4. 什么是Saas架构?

    一.云计算与SaaS 说起SaaS,就得先说说云计算了.关于云计算分为三层,基础设施在最下端,平台在中间,软件在顶端,分别是分别是Infrastructure-as-a-Service(IaaS),P ...

  5. 云技术平台赋能媒体融合发展创新

    欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:熊普江 媒体行业是传统而又新兴的行业,在数字化.信息化.移动化快速演进的今天,无论是用户.社会还是行业.政府都意识到,传统媒体与新兴 ...

  6. 栋的周评 | 第一回合(定期更新、博客动态、亚马逊 AWS 云技术、其他技术、收听、哲学、书籍、影视、新奇、好歌推荐)

    开篇词 大家好!以下是我在上一周的所见.所闻.所学和所悟. 现在,我把它们安利给你们. 定期更新 原创专栏:Linux 管理员手册:既简单又深刻 官方授权:Baeldung Java 周评 博客动态 ...

  7. 多维度创新打造领先阿里云技术生态

    10月26日,2018中国计算机大会上举办了主题是"云计算生态与发展"的技术论坛.论坛上,阿里云技术战略架构师陈绪博士从构建目标.构建基石.构建要点三个方面详细陈述了阿里云开放的技 ...

  8. 专访阿里云游戏首席架构师李刚:如何解决云服务技术两大痛点?

    原文链接:点击打开链接 摘要: 对于阿里云来说,游戏相关的项目合作一直在增加. 对于如今的游戏行业来说,云服务早已不是什么新鲜的话题.一定程度上,不论是近期兴起的手游,还是曾经的端游和页游,如今都会或 ...

  9. 栋的月结 | 第二回合(定期更新、动态、架构、云技术、算法、后端、前端、收听/收看、英文、书籍、影视、好歌、新奇)[含泪总结.. 憋泪分享!]

    开篇词 大家好!以下是我在 2020 年 2 月 1 日至 29 日的所见.所闻.所学和所悟. 现在,我把它们安利给你们. 定期更新 原创专栏: 一文搞定 Linux 管理员手册:既简单又深刻 官方授 ...

最新文章

  1. 用递归的方法求s = k! + n! / m!的值
  2. javascript各种事件
  3. 如何对聚类结果进行分析_如何更合理地给聚类结果贴标签——由一个挖掘学生用户的项目说开去...
  4. SaaS 客户生命周期(逐字稿+PPT)
  5. 有没有一个永久储存数据的地方?
  6. 基于CUDA的三维VTI介质逆时偏移与ADCIGs提取
  7. “现有人工智能都是二流的”
  8. mysql 常用函数总计
  9. IT人 不要一辈子靠技术生存(转
  10. python壁纸数据抓取_Python《wallhaven壁纸爬取》
  11. 批量修改密码脚本--------小练习
  12. java中对图片的裁剪_java实现的图片裁剪功能示例
  13. HTML5-Drog和Drag
  14. MarkDown 语法大全查询
  15. .texi文件如何转成pdf
  16. k8s拉取镜像规则_【大强哥-k8s从入门到放弃13】Service详解
  17. SSH远程ubuntu【无公网IP、内网穿透】 3-3
  18. 【skLearn 回归模型】岭回归 <linear_model.Ridge>
  19. 阿里云服务器支持IPV6和CND的详细教程
  20. 流式布局FlowLayout使用

热门文章

  1. python编程、abc最大值_Python中abc
  2. Request的学习笔记(属Servlet学习课程)
  3. 如何获取上传文件的本地路径
  4. Linux 命令之 cat -- 在终端设备上显示文件内容(查看文件内容/浏览文件内容)
  5. 中国大学生计算机设计大赛云南,第14届中国大学生计算机设计大赛云南赛区决赛举行...
  6. tomcat应用服务器有哪些,手写一个Tomcat应用服务器
  7. nginx配置vue项目500_一个Nginx部署多个vue前端项目总结
  8. 钢笔墨水能否代替打印机墨水_LAMY钢笔应该如何选择墨水?
  9. 安卓php推送消息机制,深入剖析Android消息机制原理
  10. ns-3文件编译出错总结