当前位置服务器行业动态 → 正文

无服务器架构的下一步是什么?

责任编辑cres 作者Brecht De Rooms 来源企业网D1Net  2020-03-18 10:27:31 原创文章 企业网D1Net

将逻辑和数据自动分发到边缘将为用户带来更小的网络延迟而无需开发人员进行配置和扩展
 
无服务器服务无处不在无服务器产品向新的编程方式发展的驱动力来自各种形式的产品其中包括应用程序托管平台无服务器数据库内容分发网络(CDN)安全产品等
 
无服务器产品已经解决了低级别的配置扩展和资源调配问题最后一个问题是分发在这里边缘计算的无服务器通过在多个数据中心分布数据和计算提供了一个解决方案边缘计算的无服务器通过使计算更接近用户来减少网络延迟
 
无边缘服务器是近15年前从“基础设施即服务”开始的云计算架构演变的顶点这种发展的下一阶段将是进一步推动无服务器“构建块”的分发并使开发人员更容易使用它们
 
分层架构
 
(1)基础设施即服务(IaaS)
 
云计算革命始于基础设施即服务(IaaS)的出现采用基础设施即服务(IaaS)企业可以将运行在内部部署基础设施的业务转移到云平台他们只为使用的存储容量和计算时间支付费用而不需要安装或管理任何硬件或网络
 
基础设施即服务(IaaS)运营成本起初似乎很高昂但很多企业很快采用因为可以提供更高水平的正常运行时间而购买和维护自己的基础设施的价格通常超过了基础设施即服务(IaaS)产品最重要的优势是云计算消除了硬件维护和配置从而使开发人员专注于业务价值
 
(2)平台即服务(PaaS)
 
随后供应商将云计算技术再向前迈进了一步并提供了平台即服务平台即服务(PaaS)解决方案不只是租用服务器而是租用构建应用程序所需的一切这不仅包括服务器还包括操作系统编程语言环境数据库和数据库管理工具
 
基础设施即服务(IaaS)提供程序使用户成为租用服务器的管理员而平台即服务(PaaS)提供程序接管服务器管理任务例如软件安装或安全更新并经常尝试预期代码的环境要求平台即服务(PaaS)的目标是为企业提供一种简单的方法来部署其应用程序平台即服务(PaaS)比基础设施即服务(IaaS)更进一步将开发人员从系统管理任务中解脱出来并使他们专注于最重要的应用程序
 
AWS Elastic BeanstalkGoogle App Engine和Heroku是提供平台即服务(PaaS)的几家提供商
 
(3)软件即服务(SaaS)
 
软件即服务(SaaS)通常是指可以通过各种订阅获得的在线托管应用程序这些应用程序完全可以在云中运行并且可以通过全球互联网和浏览器进行访问本质上在云中运行并具有基于订阅的定价模型的每个应用程序都被认为是一个SaaS应用程序
 
SaaS应用程序有两种类型面向最终用户的应用程序和面向开发人员的应用程序后一种类型旨在为其他应用程序提供基础GmailDropboxJiraBitBucket和Slack都是专注于最终用户的SaaS应用程序的示例而Stripe和Slaask公开的API允许企业将其软件即服务(SaaS)解决方案集成到自己的应用程序中
 
(4)容器即服务(CaaS)
 
容器平台是基础设施即服务(IaaS)的最新形式容器即服务(CaaS)提供商可以提供容器中的服务或应用程序并为用户管理容器
 
容器比虚拟机更有效地利用基本主机资源人们可以把容器看作是“微型服务器”它们可以快速启动多个实例可以在一台服务器上运行
 
容器即服务(CaaS)提供商提供了一些工具可以在服务器上部署容器以及扩展容器实例的数量最先进的产品完全为企业管理底层服务器使其可以专注于代码(或容器)而不是基础
 
容器即服务(CaaS)已迅速成为平台即服务(PaaS)和软件即服务(SaaS)的组成部分之一从而形成了分层的体系结构已经发生了向尽可能多地开发应用程序的转变许多复杂的应用程序仍然是软件即服务(SaaS)平台即服务(PaaS)和容器即服务(CaaS)的组合因为可用的平台不够灵活无法提供应用程序所需的一切
 
许多复杂的应用程序是软件即服务(SaaS)平台即服务(PaaS)和容器即服务(CaaS)的组合
 
通过尽可能多地依赖软件即服务(SaaS)企业可以摆脱配置和可扩展性方面的顾虑对于其余部分企业通常会使用运行中的容器这意味着他们仍然有配置和管理方面的问题
 
(5)功能即服务(FaaS)功能即服务(FaaS)使企业无需考虑扩展服务器或容器问题就可以上传和执行代码从这个意义上讲它超越了先前产品的易用性原则但是它也具有在平台即服务(PaaS)中不太突出的局限性
 
功能即服务(FaaS)的最大优势是扩展扩展功能即服务(FaaS)的粒度可以比平台即服务(PaaS)或容器即服务(CaaS)的粒度低并且不需要配置同样企业不用为不使用的服务支付费用
 
•粒度平台即服务(PaaS)应用程序通常仅按应用程序扩展而基于容器即服务(CaaS)构建的应用程序仅按容器扩展功能即服务(FaaS)应用程序细分为单独的功能因此可以按功能扩展缺点是它经常需要企业重新考虑应用程序的架构除了管理一个应用程序或几个容器之外还必须管理执行较小任务的许多功能这可能会导致许多编排工作
 
•配置通常在何时配置(按比例放大和缩小触发)或人工设置需要运行的应用程序或容器的实例数量的地方功能即服务(FaaS)不需要企业扩展或配置特定资源
 
•按需付费与为代码是否被有效执行而支付费用的容器即服务(CaaS)不同只是在调用功能时才会产生费用这种按需付费的定价模式正逐渐成为定义无服务器的最重要方面
 
•限制在典型的应用程序中企业可以受到代码定义内存限制或执行时间限制尽管功能即服务(FaaS)提供程序允许企业配置这些设置但仍有一些上限可以确保提供程序可以有效地优化这些资源可以想象如果可以使用10GB的内存创建功能或可以运行几个小时的功能则提供商很难估计要启动多少台服务器才能最佳地使用其资源
 
新的边缘架构
 
无服务器架构消除了调配和扩展问题但是分发仍然是一个具有挑战性的问题在理想情况下企业希望其代码尽可能接近最终用户运行以减少延迟直到最近在构建应用程序的方式存在多个问题
 
•分布逻辑除非将功能或容器部署在不同的区域并且将客户端路由到最接近的功能否则其功能通常将保留在数据中心中
 
•分发动态数据在不分发数据的情况下分发逻辑不会获得巨大的回报企业的用户可能更靠近后端但后端仍然远离数据层
 
•成本配置监视很少看到应用程序分布到两个或三个以上的区域因为这样做通常会带来额外的成本或配置并且需要监视多个区域中的功能或容器
 
无服务器的下一个发展是无需配置即可进一步推动分发并交付这意味着企业的逻辑和数据分布在全球许多地区并有效地减少了最终用户的延迟
 
CDN和Jamstack
 
很多企业已经使用了提供自动分发的最基本的服务形式它称为内容分发网络(CDN) Netlify和Zeit等公司通过尽可能多地预生成应用程序并使用无服务器功能和SaaS API处理动态部分已经可以实现自动分发
 
由Netlify公司创造的“Jamstack”方法已经迅速流行起来因为内容分发网络提供了边缘架构所能提供的第一种体验当然纯粹基于服务器端呈现的Jamstack也有局限性例如必须为新的传入内容触发生成这使得将此方法应用于具有显著构建时间的高度动态网站非常具有挑战性
 
基于服务器端渲染的Jamstacks面临着高度动态的网站的挑战因为必须为新内容触发构建
 
增量构建和诸如客户端整合作用之类的概念为该问题提供了一部分解决方案但最终希望复杂的网站具有两全其美的优势对于最终用户而言网络延迟非常低以及可以立即访问的新内容
 
分布式服务的兴起
 
分布式服务来自这样一个体系结构前端与后端通信后端反过来与数据库和其他服务通信后端和数据库通常一起扩展以保持后端和数据库之间的低延迟分发是可能的但往往繁琐因此比较有限
 
后端和数据库的分发是可能的但是通常很麻烦因此受到限制
 
在未来的架构中将通过使用其他分布式服务将Jamstack的思想提升到一个新的高度这些服务中的每一个都是一个分布式网络其节点不必与其他服务位于同一数据中心中为了将等待时间减少到最小必须重新考虑安全模型以使前端与数据库和其他服务网络进行通信
 
未来的应用程序架构将利用分布式服务网络分布式数据库网络和分布式无服务器后端
 
以下了解一下有助于实现这一点的服务
 
分布式服务网络
 
许多软件即服务(SaaS)平台(例如Algolia和SendGrid)旨在成为其他应用程序的构建基块他们开发特定的服务以消除典型后端应用程序中的特定问题其中一些正在发展成为分布式服务例如Algolia它自称为分布式搜索网络(DSN)随后将有许多其他的Saas平台出现很可能很快将谈论分布式服务网络作为SaaS应用程序的下一个发展
 
分布式无服务器数据库
 
Azure Cosmos DBGoogle Cloud Spanner和FaunaDB等数据库正在采用即付即用的无服务器模式并提供现成的分发以及某种形式的ACID保证一些数据库提供安全层和本机GraphQL API这些安全层和原生的GraphQL API可以由客户端应用程序安全地使用并且可以与无服务器后端很好地配合使用安全层使用户界面可以直接与数据库进行交互而不仅仅是与后端进行交互在理想情况下前端应用程序可以与具有低延迟和ACID保证的全局分布式数据库进行通信就像数据库在内部部署数据中心运行一样
 
分布式无服务器边缘计算
 
新的无服务器功能例如Cloudflare Workers和StackPath无服务器脚本正在将无服务器功能推向边缘计算它们旨在使功能尽可能接近最终用户以将等待时间减少到绝对最小 Cloudflare Workers拥有194个站点而StackPath有45个站点
 
为什么现在这种新的边缘架构越来越受欢迎?当考虑从基础设施即服务(IaaS)到边缘无服务器的这种转变的演变时将会面临这样一个问题如何处理动态数据?尽管已经拥有Amazon S3之类的服务来托管相对静态的数据但真实的数据库仍难以提供无服务器的体验这是因为要建立一个高度一致的分布式系统非常困难
 
云中的无服务器构建基块就像搭建乐高积木
 
如今拥有具有内置安全性的无服务器数据库这些数据库为新型应用程序打开了大门这些应用程序默认情况下会以全球分布式方式进行扩展自从打开这扇大门以来许多开发人员已经开始寻求采用微服务和API替换后端部分的方法从而为许多SaaS提供商打开了新的市场
 
最终结果将开发一种像乐高积木一样工作的生态系统而开发人员将组合所需的构建块而不再担心扩展或分发
 
版权声明本文为企业网D1Net编译转载需注明出处为企业网D1Net如果不注明出处企业网D1Net将保留追究其法律责任的权利

关键字服务器

原创文章 企业网D1Net

无服务器架构的下一步是什么? 扫一扫
分享本文到朋友圈

关于我们联系我们版权声明友情链接广告服务会员服务投稿中心招贤纳士

企业网版权所有©2010-2020 京ICP备09108050号-6

^
西媒曝皇马敲定欧洲神锋!6000万欧元签约6年
不是我吹 武磊主力位置真稳了 天时人和他全占了
19届内定状元1年内增重90斤!越胖反而越能飞
博古特爆粗喷裁判将被调查 他还做了这个动作
曼城17分钟狂进5球!对手手足无措 连瓜帅都看呆
朱婷回排超恐失世界第一年薪 哪队是最佳选择?
天作之合?马布里执教的这支北控有点不好惹
当初找梅西换球衣 让他被骂成狗 如今成了宠儿
恢复中!高拉特训练中挑射看待广州塔 归化提日程
为何我们对孔卡念念不忘?他开启了中超的新概念
世界杯韩国女排客场3-1胜日本 东道主遭遇两连败
叙位以待!一图get国足战叙利亚的那些事
2019世乒赛混双下半区签表:日本两对组合扎堆
斯诺克世界公开赛丁俊晖单杆破百 5-2胜出进16强
传奇进行时!汪嵩追平神迹 历史第1人只是时间问题
申花四连败告别虹口 丢球莫名搞笑 下轮怎踢恒大
LG杯柯洁逆转胜井山裕太 八强中国5人韩国3人
李楠透露小丁伤情:恢复不是很理想 回归延期
猪年首期双色球开11注623万 云南1彩站独揽3118万
里皮毫不掩饰国足主力阵容 战叙利亚不打算调整