内容简介:在传统的客户端-服务器应用程序中,基于数据的所有API和端点都需要由开发人员实现。无服务器架构(server less)是指依赖第三方服务运行的企业IT基础架构,而不是使用内部部署架构。但这并不意味着不需要服务器,而是企业无需购买、租用或配置物理服务器,从而无需预配置或管理服务器即可运行代码(由服务商提供基础设施)。
在传统的客户端-服务器应用程序中,基于数据的所有API和端点都需要由开发人员实现。
无服务器架构(server less)是指依赖第三方服务运行的企业IT基础架构,而不是使用内部部署架构。
但这并不意味着不需要服务器,而是企业无需购买、租用或配置物理服务器,从而无需预配置或管理服务器即可运行代码(由服务商提供基础设施)。
无服务器基础结构不必独立于基于服务器的基础结构运行,某些代码可以在服务器上运行。Web应用程序就是一个很好的例子,它结合了微服务和无服务器代码来使它们运行。
后端即服务(BaaS)和功能即服务(FaaS)
无服务器基础架构可以分为两个单独的类别:后端即服务(BaaS)和功能即服务(FaaS)。
BaaS最初是作为移动架构(移动后端即服务或MBaaS),但已经发展为支持桌面程序,而不仅仅是移动应用程序。
BaaS提供完整的在线服务,管理代码的每个部分。通常,代码将在触发后不断运行,因此向提供商支付订阅。
BaaS使用相同的后端服务在各种应用程序的共享基础架构上运行。提供BaaS基础设施的供应商的例子有Parse,Kinvey,Buddy,Appcelerator和StackMob。
FaaS与BaaS不同,因为它仅提供执行开发人员设计的代码的工具。
FaaS通过按需触发代码来工作,例如当某个事件发生时。这意味着你不必担心管理操作,因为它们都是自动发生的,并且运行起来非常便宜,只需支付在该触发器上消耗的内容,在几分之一秒内,测量内存和CPU使用率。
FaaS基础结构的示例包括AWS Lambda、Azure Functions、IBM OpenWhisk和Google Cloud Functions。它们都支持大多数编程语言和运行时,包括Node.js、 Python 、.NET Core和Java。
无服务器架构实现的示例
无服务器基础架构不适用于每个应用程序或服务,特别是FaaS设置的情况。
因为它专为快速查询而设计,所以它最适合实时应用程序,例如数据分析、推送通知(如游戏应用程序、传输更新应用程序和社交网络或消息程序)以及其他不运行的应用程序经常,但在事件驱动的时间间隔,如数据库清理。
由于无服务器基础架构可以与微服务一起使用,因此还有其他应用程序可以使用此功能,包括API引导的SaaS应用程序或依赖第三方源数据的应用程序。
无服务器架构的好处
除了较低的前期成本以及通常基于消费的支付模式之外,无服务器基础架构可以更容易维护,提供商管理维护确保它们按需启动和运行。
这意味着你不必聘请工程师来管理服务器,开发人员可以专注于编写代码和创新。这也意味着企业可以更好地响应不断变化的市场条件,调整代码而不必考虑它将驻留在何处。
FaaS特别提供了进一步的好处。例如,用户不必等待HTTP请求或API调用,因为代码仅在需要时执行。提供商管理包括扩展在内的所有其他内容,使其成为管理资源的更简单方法。
一旦执行了任务,容器就会被提供者停止服务,因此你不会为休眠容器付费。
无服务器架构的缺点
因为基础架构的管理依赖于提供者而不是开发人员,所以存在一些缺点。
最大的问题之一是开发人员或 程序员 不会像管理基础架构那样拥有相同的应用程序可见性。因此,如果代码出现中断或问题,他们可能无法立即解决问题。
供应商锁定也是一个很大的挑战。如果在一个服务上设置所有内容,那么在提供商之间切换是很棘手的,有时候,实施的复杂性可能意味着在提供支持和切换时在经济上不可行。
无服务器架构的其他限制是因为它使用共享基础架构,在初始服务器请求期间可能会出现一些级别的延迟,这可能会使应用程序显得迟缓。
无服务器功能都是无状态的(stateless ),状态信息不能从一个函数的调用传递给下一个。有些应用程序不适合无服务器体系结构,例如长时间运行的进程,因为FaaS被设计为在代码启动后销毁容器。
虽然无服务器平台也许可以轻松满足初始部署和缩放等需求,但依然无法完全省略基础架构运维
以上所述就是小编给大家介绍的《为什么微软、AWS都选择无服务器架构?3分钟读懂其优势和用例》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- eBPF 架构优势及其应用方向上的畅想
- InCloud Rail 3.0亮相vFORUM 2018,浪潮超融合架构以优势取胜
- golang的特性和优势
- 阿里 RocketMQ 优势对比 - 后端
- Reactive 模式优势与实战
- [译] 容器编排的优势与特点
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Introduction to Programming in Java
Robert Sedgewick、Kevin Wayne / Addison-Wesley / 2007-7-27 / USD 89.00
By emphasizing the application of computer programming not only in success stories in the software industry but also in familiar scenarios in physical and biological science, engineering, and appli......一起来看看 《Introduction to Programming in Java》 这本书的介绍吧!