基于Serverless的前端开发模式研究.docx

基于Serverless的前端开发模式研究.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

基于Serverless的前端开发模式研究

?

?

李莎莎

摘要:最近关于Serverless的研究逐步升温,Serverless将对前端开发模式产生变革性的影响。该文主要从前端开发模式的演进、ServerZess的优点和缺点以及Serverless设计思路等方面,探讨Serverless中的前端开发模式。

关键词:Serverless;前端开发;设计思路

:TP3:A

:1009-3044(2019)29-0240-02

1概述

回顾前端开发模式的演进,主要有四个阶段:(1)基于模板渲染的动态页面;(2)基于AJAX的前后端分离;(3)基于Node.js的前端工程化;(4)基于Node.is的全栈开发。每一次前端开发模式的变化,都因某个变革性的技术而起。先是AJAX,而后是Node.js。那么下一个变革性的技术是什么?不言而喻,就是Serverless。最近半年Serverless这个词汇以及其引发的热烈的讨论,Serverless可能会是接下来引起前端领域革命性变化的技术之一。Serverless是一种“无服务器架构”,允许用户专注于业务逻辑,而无需担心程序的运行环境,资源和数量。对业务前端开发人员而言,Serverless会改变前后端接口定义规范;将改变前端联合模式,让前端参与服务器逻辑开发;显着降低Nodejs服务器维护阈值,只要您编写Js代码来维护Node服务而无须学习Devops。对于免费的开发人员,未来的服务器部署更灵活,更具成本效益;部署更快,更不容易出错。

前端框架总是带来后端思维,而Serverless则为前端操作和维护带来了前端思维。前端开发人员不需要拥有自己的服务,甚至不需要自己的浏览器,他们可以在每个用户的计算机上均匀地运行JS代码并进行负载均衡。从技术角度来说,Serverless就是FaaS和BaaS的结合。Serverless=FaaS+BaaS。FAAS(作为服务)+BAAS(后台即服务)可以称为无服务器的完整实现,如图1所示。除此之外,还有PASS(平台即服务)的概念。通常,平台环境由容器技术实现,最终实现NoOps(无管理),或至少Devops(开发操作和维护)。

2Serverless的优点及缺点

2.1Serverless主要优点

Serverless架构的优点如下:

(1)降低运营成本。Serverless是非常简单的外包解决方案。它允许您委托服务提供商来管理服务器,数据库,应用程序甚至逻辑,或者您必须自己维护它。由于该服务的用户数量将非常大,因此将具有规模经济。降低成本有两个方面,即基础设施成本和人员成本(运营/开发)。

(2)降低开发成本。成功的无服务器服務提供商应该能够提供一系列补充服务。这意味着您只需要在配置文件中记下数据库的名称,然后我们的数据将存储在相应的数据库中。即使一个服务提供者提供了一系列功能计算模板,那么我们只需要编写我们的配置。这一系列事情可以自动有效地完成。

(3)扩展能力。Serverless架构一个显而易见的优点即“水平扩展是完全自动的,弹性的,并由服务提供商管理”。受益于基础架构的最大好处是,您只需支付所需的计算能力。

(4)更简单的管理。Servefless架构明显比其他架构更简单。更少的组件意味着更少的管理开销。

(5)实现快速上线。对于Web项目,启动项目需要一系列”hello,world”。无服务器部署的优势使其易于上线。

(6)“绿色”的计算。据“福布斯”杂志报道,商业和企业数据中心的典型服务器仅提供平均最大处理能力输出的5%至15%。这无疑是一种资源的巨大浪费。随着无服务器架构的出现,服务提供商能够提供我们的计算能力,以最大限度地满足实时需求;这将使我们能够更有效地利用计算资源。

2.2Serverless主要缺点

作为在运行时启动的应用程序,Serverless也有一个我们需要的问题。

(1)不适合长时间运行应用。Serverless在请求到来时才运行。这意味着当应用程序未运行时,它将进入“休眠状态”,并且下次请求到来时,应用程序将需要一个启动时间,即冷启动。这个时候,可以结合CRON的方式或者CloudWatch来定期唤醒应用。如果您的应用程序需要长时间不间断运行并处理大量请求,那么您可能无法采用无服务器架构。

(2)完全依赖于第三方服务。当您决定使用云服务时,您只能在无服务器上放置不重要的API。当您拥有大量基础架构时,无服务器并不是一件好事。使用无服务器架构时,它与特殊服务提供商捆绑在一起。服务迁移变得困难。

(3)冷启动时间。无服务器应用程序的冷启动时间存在问题,尽管这种冷启动时间在大多数情况下可以在50ms内。对于带有Node.js应用程序虚拟机的Java和C#,这可能不是那么幸运。

(4))缺乏调试和开发工具。

文档评论(0)

189****4123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档