SaaS到底是什么

摘要:
定制开发是SaaS应用程序的主要成熟度。最大的区别在于商业模式,即SaaS供应商负责软件、硬件和相应的维护。这种多租户单实例架构更接近于真正的SaaS应用程序架构。降低了硬件和维护成本,发挥了SaaS应用的规模效应。这种成熟度的硬件和租户数量可以无限增加,因此它是最理想的SaaS架构。这是我对SaaS的理解。我以前还没有真正了解SaaS是什么,所以我特意整理了一下。所以我们公司现在正在做的是SaaS的第三阶段。
       SaaS(Software-as-a-Service),字面意思:, 即通过网络提供软件服务。
 
       SaaS平台供应商将应用软件统一部署在自己的服务器上,客户可以根据工作实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得Saas平台供应商提供的服务
 
  SaaS更是一种经营模式而非开发模式,不要搞混了,微服务才是开发架构的一种模式。
 
  租户:SaaS中面向的用户,一般为企业用户。比如我们这里用商城做示例,那么租户就是商家。
 
服务的传统模式:(软件定制我提供,硬件你自己解决)
 
    你要做个在线商城,来找我这个软件开发商;
    你要整理你的需求,让我明白你要做京东还是淘宝那样的;
    如果有良心的话,看了你的需求我可能会做个原型图出来给你看看;
    但是像我这样没良心的,大概率会直接给你个报价单;
    并且告诉你要买什么配置的服务器、数据库、域名等基础设施;
    然后3个月过去了,商城做好了,简单一测试必然通过,BUG什么的,你怎么会这么快就发现,我自己都没发现。
    我帮你部署到服务器上,试运营一段时间,收了尾款,see you !
    半年过期了,你来打电话找我,兄弟,网站访问不了了,帮我看下;
    讲良心的,或者合同里规定的还没出保修期的,大概率会免费帮你看看;
    但你看我这样的,估计问你要个千儿八百的可能都算少的。
  这就是初期软件服务的整个过程。
 
SaaS服务的第一阶段(软硬件我都包了,仍然是定制)
  售后维护是个硬伤,总不能远程解决不了的问题都坐飞机过去一趟吧,于是开发商就想,要不你们把服务放到我的服务器上吧,安全有保障,维护起来也方便。

  定制开发,是最初级的 SaaS 应用成熟度。

  每个租户对应一个单独开发的软件 实例,与传统模式几乎没有差别。简单的说就是,每增加一个租户,就在一台服务器上部署一套代码和数据库。

  最大不同就在于商业模式,即软硬件以及相应维护均由 SaaS 供应商负责。放心不会亏本的,羊毛出在羊身上,哪有自己掏钱的傻瓜商人。

 
SaaS服务的第二阶段(摆脱定制)
 
  软件开发商都是讲究效率和收益的,过了两年后,开发商觉得这样简直太落伍太原始了,哪怕我把核心做成高度复用的,一人一个需求也够麻烦的,每个客户的代码不一致,数据结构不一致,版本不一致,那维护起来也是一头疙瘩。
  
  开发商就想啊想,怎么才能少出力多挣钱,终于在想破头的前一天想通了:
    我做过这么多不同需求的商城,可以说所有需求都做过了,干嘛不做一个包含所有需求的商城呢,给他提供一个基础版本。
    到时候他要用哪个功能我就在配置里给他打开,然后收费,嘿嘿嘿。
    只要钱到位91porn都可以在线播放。
 
  第二阶段的特点是:
    可配置,是在第一级的基础上改进的。
    每个租户仍然对应一个单独的软件实例,但是供应商只提供了一套代码,通过不同的配置来灵活地满足各个租户
 
SaaS服务的第三阶段(多租户)
  后来开发商觉得这样,虽然只有一套代码,但是每个客户都部署一个实例还是麻烦,不光是维护,后期的版本更新也是麻烦事。
 
  要是能只维护一台服务器,一套代码,却能服务所有客户多好,想想都要忍不住、啊~
 
  于是,琢磨了几天后,开发商就自己买了一台大容量服务器,稍微改了改代码(支持注册、注册后即可享用SaaS第二阶段的服务),部署上去了。
 
  以后谁要想做线上商城,来我这注册就行了,一年只需888,开箱即用,按年收费,童叟无欺。
 
  忘了说一年888是基础版的,嘿嘿,要开通会员积分、分销、广告的统统滴交钱。
 
  其实这就是租用软件服务,一人一个账号,一个人就是一个租户,大家都用我这一台服务器,一个数据库。
 
  因为成本低嘛,所以大家就先共用同一张表,放心,我会给你们加上租户ID,来区分你们之间的数据,不要慌。
 
  这样子,开发商就可以大量的扩展市场了,虽然按年收费便宜了点,但是硬件成本和人力成本更低,只要用户量上来,产生粘性,那简直来源源不断的Money啊,啧啧~
 
第三阶段的特点:高性能的多租户架构,提出了多租户的概念,多个租户共享同一个运行实例。这种多租户单实例的架构更接近于真正意义上的 SaaS 应用架构。降低了硬件及维护成本,发挥了 SaaS 应用的规模效应。 
 
SaaS服务的第四阶段(无限扩容)
  又是几年过去了 ,这个开发商虽然心黑,但你别说,这两年挣得那是盆满钵满,客户量蹭蹭的往上涨啊。
 
  但是福祸双至啊,服务器压力已经到上限了,这两天正有客户打电话说商城有问题不能访问了,要求退款赔偿,急的开发商那是一个满头大汗,抓耳挠腮。
 
  这个时候,咔嚓一声,明明万里无云,却晴空霹雷,开发商一个哆嗦,忽然福灵心至,茅塞顿开,脑中一片清明,悟了。既然这样,不如那样,嗯,甚好。
 
  于是架构升级了,以前那都是啥破玩意,docker容器化搞起来,K8S安排,API网关接口、MyCAT数据分库分表、用户鉴权、服务治理、中间调度层、SSO、服务器弹性伸缩搞起来,日志监控必须有……
 
  反正一顿操作猛如虎,一看效果250,还不错,多租户SaaS支持无限扩容,听起来就能Hold住人。
 
第四阶段的特点:可伸缩性的多租户架构,添加了中间调度层将多个租户分配到多个运行实例上,通过多个运行实例来分担大规模租户访问。这一级成熟度硬件和租户数量可以无限制地增加,因此是最为理想的 SaaS 架构
 
 
这就是我理解的SaaS了,之前一直不是很理解SaaS到底是什么,所以特意整理了一下,原来我们公司现在做的就是SaaS的第三阶段。
 
下面放一片不错的文章,里面除了有SaaS的介绍,还有多租户下数据的存储和扩展的说明
http://www.360doc.com/document/12/0823/16/10636892_231933452.shtml
数据扩展中关于XML的那部分,可以用文档类型的数据库代替,比如mongo。
 
 
 
 
 

免责声明:文章转载自《SaaS到底是什么》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇tail -f 实时查看日志文件 linux查看日志后100行Pandas 查询示例 Pandas .query() 方法过滤数据 数据帧中类似 SQL 的查询下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

三层架构和MVC的区别

一、三层架构 三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也...

Exchange 2016高可用及容灾架构选型参考

Exchange 2016高可用及容灾架构选型参考 钟云福 一     摘要 Exchange 2016作为微软最新最先进的企业级邮件系统,推出已一年多,由于其先进的架构,一脉相承的优秀办公体验,逐步被越来越多的企业所接受。嘉为科技今年已为几个中大规模的企业提供了Exchange 2016实施落地的项目,在方案确定过程中,经常需要讨论邮件架构的规划,现将规...

几种常见的微服务架构方案简述——ZeroC IceGrid、Spring Cloud、基于消息队列

微服务架构是当前很热门的一个概念,它不是凭空产生的,是技术发展的必然结果。虽然微服务架构没有公认的技术标准和规范草案,但业界已经有一些很有影响力的开源微服务架构平台,架构师可以根据公司的技术实力并结合项目的特点来选择某个合适的微服务架构平台,以此稳妥地实施项目的微服务化改造或开发进程。本文选自《架构解密:从分布式到微服务》一书,了解本书详情请点击阅读原文。...

微服务架构介绍

作者:老刘链接:https://www.zhihu.com/question/55511712/answer/860169294来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 一、微服务架构介绍 微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方...

(转)大型分布式网站架构技术总结

本文是学习大型分布式网站架构的技术总结。对架构一个高性能,高可用,可伸缩,可扩展的分布式网站进行了概要性描述,并给出一个架构参考。一部分为读书笔记,一部分是个人经验总结。对大型分布式网站架构有很好的参考价值。   本次分享大纲如下 大型网站的特点 大型网站架构目标 大型网站架构模式 高性能架构 高可用架构 可伸缩架构 可扩展架构 安全架构 敏捷架构 大型架...

XMPP协议的原理介绍

XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探測。它在促进server之间的准即时操作。这个协议可能终于同意因特网用户向因特网上的其它不论什么人发送即时消息,即使其操作系统和浏览器不同。 XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协议。XMPP眼下被IETF国际标准组织完...