最近在准备一些科普性的知识内容,发现大家对于一些基础性的知识概念还是有点模糊。今天先来简单介绍一下IaaS/PaaS/SaaS的区别~

其实还有一个On-Premises(本地部署)的概念,也可以一并介绍。

IaaS/PaaS/SaaS的区别

先来一个简单的例子,区分一下这几个概念吧。以我的午餐“煲仔饭”为例(例子是拾人牙慧,自己基于理解,再另外举了个例子):

不管是我自己来做煲仔饭也好,还是别人帮我做煲仔饭也好,我们都需要以下原材料:

米饭、配料、菜品(肉类、蔬菜等)、电磁炉、锅、电、餐桌、饮料(煲仔饭必备)

那么,根据做煲仔饭的人的情况可以分为以下几种情况:

On-Premises:自己负责全部的流程,包括原材料的购买、制作等;

IaaS:买成品(米饭、调料和菜品已经搭配好),带回家用自己的厨具来制作;

PaaS:直接点外卖,只需要自己拿出餐桌和饮料就行;

SaaS:直接去店里吃,所有的东西由店家提供。

IaaS/PaaS/SaaS的定义

我们回过头来,再来看这个几个词的定义(来自百科):

IaaS

Infrastructure as a Service,即基础设施即服务。指把IT基础设施作为一种服务通过网络对外提供,并根据用户对资源的实际使用量或占用量进行计费的一种服务模式。

PaaS

Platform as a Service,提供软件部署平台,抽象掉了硬件和操作系统细节,可以无缝地扩展。开发者只需要关注自己的业务逻辑,不需要关注底层。即PaaS 为生成、测试和部署软件应用程序提供一个环境。

SaaS

Software as a Service,软件即服务,即通过网络提供软件服务。

SaaS目前的瓶颈

因为云计算的发展,现在这几个概念都很深入人心。不同的企业出于不同的考虑,会采用不同的商业模式,而SaaS不仅适用于中小型企业,所有规模企业都可以从SaaS中获利。但是因为技术的限制以及市场成熟度的问题,SaaS会面临以下的困境:

技术方面:

目前SaaS软件个性化的定制技术尚未成熟。SaaS提供的服务,注定了它需要在通用的SaaS平台基础上满足客户定制化的需求。传统软件的定制服务是在软件开发阶段就完成的,所以就对定制化能力要求不高。但是SaaS需要在软件使用过程中针对需求的变化更新定制,而且在定制的时候不能影响其他用户的使用。还有就是,SaaS的操作必须简单,节省客户的学习成本。上面两点,使得SaaS的技术开发更加复杂。传统软件的经验在SaaS这块推不开。

市场制度方面

目前市场上对于SaaS方面的制度还是比较混乱的。当前SaaS市场上,SaaS服务商专注于为大型客户提供服务,而忽视了中小型客户。而且,因为SaaS的盈利模式,导致一些SaaS服务商虽然占有大量的优质客户,但是却没有加速SaaS的推广。其次就是SaaS在国内的需求一直不能落地。这个情况可以参考知乎的一个回答:中国的软件为什么没有国外的发达?

数据安全方面

另外,国内对于软件这块的制度,一直不够完善。云端的数据存储问题以及数据安全问题,也是客户对于SaaS服务一直心存疑虑的主要因素。因为SaaS服务的特性,使得数据的安全需要是一种动态安全不仅要保证数据不丢失,还需要保证用户在业务增减等原因导致的安全需求发生变化时能灵活调整。同时,由于平台被多租户共享,数据信息交互复杂,对数据权限的要求极高。对于网络安全而言,互联网的稳定性给SaaS的应用提出了巨大的挑战。企业内网和互联网连接的不确定性太高,无论何种因素引起的网络稳定性的波动都会影响软件的使用,甚至造成用户数据的丢失。

总结

云计算的发展是大趋势,出于SaaS本身技术优势、客户使用SaaS的资金投入少、维护和管理成低,SaaS的发展也是一种必然。之前的发展需要:

加大研发力度,解决个性化定制问题

多方协助,共同规范SaaS市场的竞争秩序

加强数据及网络安全防范

【涂鸦物联网足迹】用煲仔饭来说明IaaS/PaaS/SaaS的区别的更多相关文章

  1. 【涂鸦物联网足迹】API及SDK介绍

    前序系列文章>>> [涂鸦物联网足迹]物联网主流通信方式 我们系列文章,都会围绕如何完成一款智能"隔空接吻机"的开发.希望能帮到各异地恋or异国恋的情侣们! 本文 ...

  2. 【涂鸦物联网足迹】涂鸦云平台消息服务—顺带Pulsar简单介绍

    前序系列文章>>> [涂鸦物联网足迹]涂鸦云平台标准指令集 开放消息平台主要通过 Pulsar 主动推送各种事件数据给外部合作伙伴,以满足合作伙伴对消息实时性和消息持久化的要求. 一 ...

  3. 制作一个有趣的涂鸦物联网小项目(涂鸦模组SDK开发 CBU BK7231N WiFi+蓝牙模组 HSV彩色控制)

    实现的功能: l  APP控制月球灯 l  本地月球灯控制 l  APP控制"大白"颜色,实现各种颜色变身 l  门状态传感器状态APP显示 l  网络状态指示灯,连接服务器长亮, ...

  4. iOS的非常全的三方库,插件,大牛博客

    转自: http://www.cnblogs.com/zyjzyj/p/6015625.html github排名:https://github.com/trending, github搜索:http ...

  5. iOS开发之资料收集

    github排名:https://github.com/trending, github搜索:https://github.com/search. 此文章转自github:https://github ...

  6. github上关于iOS的各种开源项目集合(转)

    UI 下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITable ...

  7. iOS 第三方库、插件、知名博客总结

    iOS 第三方库.插件.知名博客总结 用到的组件 1.通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FMDB 本地数据库组件 SDWebImage 多个缩略图 ...

  8. iOS -- 开源项目和库

    TimLiu-iOS 目录 UI 下拉刷新 模糊效果 AutoLayout 富文本 图表 表相关与Tabbar 隐藏与显示 HUD与Toast 对话框 其他UI 动画 侧滑与右滑返回手势 gif动画 ...

  9. iOS非常全的第三方库

    iOS ● 非常全的三方库.插件.大牛博客等等   github排名:https://github.com/trending, github搜索:https://github.com/search. ...

随机推荐

  1. Improving Commonsense Question Answering by Graph-based Iterative Retrieval over Multiple Knowledge Sources —— 基于多知识库迭代检索的常识问答系统

    基于多知识库迭代检索的问答系统 论文地址 背景 常识问答任务需要引入外部知识来帮助模型更好地理解自然语言问题,现有的解决方案大都采用两阶段框架: 第一阶段 -- 从广泛的知识来源中找到与给定问题相关的 ...

  2. L-Rui

    <!DOCTYPE html> <head> <meta charset="UTF-8"> <link rel="shortcu ...

  3. mq checkpoint文件

    记录comitlog,consumeQueue,Index文件的刷盘时间点,文件固定长度4k,其中只用该文件的24个字节,其存储格式: 8字节physicMsgtimestamp+8字节logicsM ...

  4. 阿里云云开发平台助力风变科技Serverless架构升级实战

    阿里云云开发平台助力风变科技Serverless架构升级实战 背景 风变科技 一个希望通过技术去推动下一代基础教育的组织.旗下产品包括第一代的熊猫书院(读书类产品).第二代的熊猫小课(泛学科综合学习平 ...

  5. 04-Python里字符串的常用操作方法三-判断

    1. startswith(): 判断字符串是否以某个子串开始,是则返回True,否则返回False 示例: my_str = 'hello world and my and test and pyt ...

  6. Spring Boot 集成多个 Kafka

    一.配置文件 application.yml spring: kafka: one: bootstrap-servers: IP:PORT consumer: group-id: YOUR_GROUP ...

  7. 老哥们,请问我做的对么?(记一次失败的st表乱搞)

    今天a开始就不是很顺,然后到d,d努力读完题理解完题意,感觉自己又行了{ 问最大的jump,我觉得如果单纯贪心策略显然会t,问min,max这类rmq果断上了st表(这东西我隔离的时候写的,没想到被拉 ...

  8. moviepy音视频剪辑:追踪人脸打马赛克的三种实现方式

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在moviepy官网的案例<Tracking and blurring someone's face>和CSDN的moviepy大神uc ...

  9. 第8.14节 Python类中内置方法__str__详解

    一. object类内置方法__str__和函数str 类的内置方法__str__和内置函数str实际上实现的是同一功能,实际上str调用的就是__str__方法,只是调用方式不同,二者的调用语法如下 ...

  10. Python文件操作函数os.open、io.open、内置函数open之间的关系

    Python提供了多种文件操作方式,这里简单介绍os.open.io.open.内置函数open之间的关系: 一.内置函数open和io.open实际上是同一个函数,后者是前者的别名: 二.os.op ...