在azure中主要有以下3种不同的托管环境。

平台即服务(PaaS)提供了可管理的托管环境,可以直接部署应用而不需要关心背后的虚拟机和网络资源。例如,当需要托管一个应用时,只需要指定实例的个数,azure(服务)就会替你管理和配置那些背后的资源,而不需要手动一一创建虚拟机。azure 应用服务(app service)就是PaaS的一个例子。从IaaS到PaaS之间,还有其他选项。例如,azure 虚拟机可以使用vm scale sets来完成平行扩展。而vm scale sets不一定来自PaaS,但PaaS有这个功能,是可平行扩展的。



函数即服务(FaaS)提供了一种应用服务,甚至不需要关心托管环境。你只需要把代码放上去,不用部署。服务会自动运行你的代码。也不需要去管理那些计算资源。这些服务使用的是无服务架构,可根据流量所需扩展或缩小。 Azure Function就是FaaS。


IaaS提供了最底层的控制,以及灵活性和可移植性。FaaS提供使得部署和托管变得简单,弹性伸缩并且有潜在的成本节省,因为你只需在代码运行时才支付费用。 PaaS在两者之间。通常,服务提供的灵活性越高,您负责配置和管理资源的越多。 FaaS服务自动管理运行应用程序的几乎所有方面,而IaaS解决方案需要手动配置和管理,连接所创建的虚拟机以及网络组件。


总结: 在选择云架构方案时,先考虑FaaS,其次是PaaS,最后才考虑IaaS(如果必须)。因为从FaaS到PaaS到IaaS,手动配置和管理的复杂度依次增加,潜在费用也依次提高。如果不需要,一般不需要用IaaS。另外,如果部分资源(比如数据)一定要放本地,那么就不建议使用云,不建议使用hybrid,就是本地和云环境结合的架构,会导致复杂度成倍增加。

azure 架构选择的更多相关文章

  1. 微服务架构-选择Spring Cloud,放弃Dubbo

    Spring Cloud 在国内中小型公司能用起来吗?从 2016 年初一直到现在,我们在这条路上已经走了一年多. 在使用 Spring Cloud 之前,我们对微服务实践是没有太多的体会和经验的.从 ...

  2. iOS 编译时处理器架构选择

    先看看主流的ios设备的架构 armv6 iPhone iPhone2 iPhone3G 第一代和第二代iPod Touch armv7 iPhone4 iPhone4S armv7s iPhone5 ...

  3. Azure架构(一):云计算基础

    云计算的定义 云计算(英语:cloud computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给使用各种计算终端(桌面电脑.笔记本电脑.平板电脑.手机等) ...

  4. Azure 软件架构选择

    1. 传统的分层结构+message broker + worker传统的层结构老生常谈了: UI 层,service,业务逻辑,数据层.就不赘述了与worker形成producer-consumer ...

  5. Azure 架构师认证考试

    Azure认证路线 AZ-300 AZ-301 https://blog.csdn.net/pg_edb/article/details/86794505 免费题 https://iteablue.c ...

  6. Microsoft Azure Storage架构分析

    Microsoft云存储服务分为两个部分,SQL Azure和Azure Storage.云存储系统的可扩展性和功能不可兼得,必须牺牲一定的关系数据库功能换取可扩展性.Microsoft实现云存储的思 ...

  7. 最全的Windows Azure学习教程汇总

    Windows Azure 是微软基于云计算的操作系统,能够为开发者提供一个平台,帮助开发可运行在云服务器.数据中心.Web 和 PC 上的应用程序. Azure 是一种灵活和支持互操作的平台,能够将 ...

  8. Windows Azure Cloud Service (38) 微软IaaS与PaaS比较

    <Windows Azure Platform 系列文章目录> 最近一直想总结Azure IaaS和PaaS的区别与比较,写个博文详细说明一下.建议读者在阅读之前,先熟悉微软PaaS和Ia ...

  9. 初码-Azure系列-记一次MySQL数据库向Azure的迁移

    初码Azure系列文章目录 还在继续给客户迁移不同的系统到Azure,这一次是一个系统的MySQL数据库要迁移,将迁移过程记录一下 原系统环境 数据库版本:MySQL Community Editio ...

随机推荐

  1. mongodb入门很简单(2)

    mongodb的安装 1.下载mongodb: www.mongodb.org  下载最新的stable版:我下载的版本是3.2.5 2.解压文件 3.不用编译:本身就是编译后的二进制可执行文件 打开 ...

  2. MR案例:多文件输出MultipleOutputs

    问题描述:现有 ip-to-hosts.txt 数据文件,文件中每行数据有两个字段:分别是ip地址和该ip地址对应的国家,以'\t'分隔.要求汇总不同国家的IP数,并以国家名为文件名将其输出.解读:M ...

  3. nginx解决跨域问题

    背景:由于公司有个项目是.net写的,但是开发人员已经离职好久了.老项目也不怎么变动就没有招新人,于是乎就把项目交接给了一位php开发人员. 今天那位php开发人员跑过来,说https://wap.a ...

  4. idea 2017 常用图标

  5. CentOS(64位)安装apr

    安装apr来提高tomcat 的可伸缩性和性能 cd /usr/local/ 1.  下载apr 和 apr-util最新版 wget http://apache.fayea.com/apache-m ...

  6. 【eclipse】Multiple annotations found at this line:——解决方法

    问题截图: 就是eclipse的maven插件太旧了 用新插件新建的maven项目就没有报错 用软件对比了一下这两个pom文件 只有项目名有区别 所以就是插件的问题 一个简单安装离线maven插件的方 ...

  7. Shell脚本 curl获取必应每日壁纸(Mac OS)

    Mac上Safari不能下载壁纸,遇到好看的很想用作壁纸.写了一小段脚本用来拉取网页图片. curl: -sS 参数用来取消下载状态显示 grep 首先把含有图片网址的行提取了出来,针对这一行再做se ...

  8. 一致性hash演示

    看到点关于一致性hash的说明,觉得挺有意思,就想体验一下. 上代码看看,体会一下在一致性hash环境下的cache和获取. 因为是小代码演示,没有很细致,包括hash函数就是用取余操作,但活生生的显 ...

  9. [转载]在sublime中运行Java代码

    1.设置java的PATH环境变量 2.创建批处理或Shell脚本文件 runJava.bat: 将该文件复制到JDK的bin目录下. @echo off cd %~dp1 echo Compilin ...

  10. winform无边框窗体点击任务栏最小化

    protected override CreateParams CreateParams { get { const int WS_MINIMIZEBOX = 0x00020000; // Winus ...