当前位置:首页计算机类软件水平考试高级系统架构设计师->论无服务器架构及其应用近年来,随着信息技术的迅猛发展和应用需

论无服务器架构及其应用

近年来,随着信息技术的迅猛发展和应用需求的快速更迭,传统的多层企业应用系统架构面临越来越多的挑战,已经难以适应这种变化。在这一背景下,无服务器架构(Serverless Architecture) 逐渐流行,它强调业务逻辑由事件触发,具有短暂的生命周期,运行于无状态的轻量级容器中,并且由第三方代为管理。采用无服务器架构,业务逻辑以功能即服务 (Function As a Service, FAAS) 的方式形成多个相互独立的功能组件,以标准接口的形式向外提供服务;同时,不同功能组件间的逻辑组织代码将存储在通用的基础设施管理平台中,业务代码仅在调用时才激活运行,当响应结束后占用的资源便会释放。

请围绕“无服务器架构及其应用”论题,依次从以下三个方面进行论述。

1.概要叙述你参与分析和设计的软件系统开发项目以及你所担任的主要工作。

2.与传统的企业应用系统相比较,基于无服务器架构的应用系统具有哪些特点,请列举至少3个特点,并进行解释。

3. 结合你具体参与分析和设计的软件开发项目,描述该软件的架构,说明该架构是如何采用无服务器架构模式的,并说明在采用无服务器架构后软件开发过程中遇到的实际问题和解决方案。

查看答案 纠错
答案:
本题解析:

一、结合自己所参与的软件项目,概要介绍该项目的背景及主要内容,并明确指出在其中所承担的主要任务和开展的主要工作。

二、问题2要求回答一些知识类型的问题,需要的知识内容如下:

首先值得说明的是无服务器架构并不是不再需要服务器,只是开发人员不再需要担心基础设施,因为一切都由云提供商负责。使用这种方法,开发人员只需部署适当的代码,其他一切由云提供商自动管理。

在传统的Web应用程序架构中,你必须管理基础架构,并确保其满足可扩展性和安全性需求。例如,客户端在一边,服务器在另一边。客户端发送一个“请求”,服务器回复“响应”。但是,如果无法满足应用程序需求,则很快就要扩展服务器端了。

无服务器模型提供了完全不同的方法。与传统架构不同,无服务架构在无状态计算容器中运行,这些容器是事件触发的,短暂的(只能持续一次调用),并由第三方完全管理。就像一个“黑盒子”,这个服务你只需上传代码并实时自动处理。当一个请求进来时,就会运行你的Lambda功能的容器。

在成本方面,使用无服务器模型,通常仅支付服务请求和运行代码所需的计算时间。计费以100毫秒为单位进行计量,使其具有成本效益,并且易于自动从每天几个请求到每秒数千次都可以。

无服务器架构的优点包括:

(1)降低运营成本:无服务架构本质上是一个外包解决方案。基础设施不会消失。然而,与常规云服务相比,事实上,只需要根据流量规模和形式支付需要的计算量,这可能会大大节省运营成本,特别是对于具有不同变化的早期和动态应用负载要求。

(2)可扩展性强:可扩展性强在云服务领域并不新鲜,但无服务架构将其提升到一个全新的水平。无服务架构的缩放功能不仅可以降低计算成本,还可以减少运行管理,因为缩放是自动的。使用无服务器,无需明确添加和删除实例到服务器阵列,并让供应商为你扩展应用程序。由于云计算提供商根据每个请求执行扩展,所以甚至不需要考虑在内存不足之前可以处理多少并发请求的问题。

(3)分离问题:无服务器几乎迫使你实施关注模型的分离,通过该分离将应用程序分成不同的部分,以使每个部分都解决一个单独的问题。

(4)隔离进程:在无服务器环境中,每个Lambda函数都完全隔离。如果其中一个功能关闭,它不影响其他功能,它不会导致服务器崩溃。

无服务器架构的缺点包括:

(1)缺乏控制权:通过任何外包策略,你都可以将某些系统的控制权给第三方供应商。由于系统停机,意外的限制,成本的变化,功能的丧失,强制的API升级等,这种缺乏控制可能会显现出来。此外,如果需要专门的服务器进行专门的流程,那么必须自己运行这个专门的服务器。一个无服务器架构,在大多数情况下,提供商业化的基础设施,将以广义的方式运行你的流程。

(2)长时间运行流程的高成本:如果你的进程持续运行很长时间,则可能会需要运行自己的服务器。因为这不仅涉及到成本,还涉及到拥有的技能或者想要投入运行自己的服务器的专注;在评估这些解决方案时,请考虑所有这些方面。

(3)供应商锁定将基础架构管理完全外包给无服务器提供商,无疑将自己锁定到该供应商。每个供应商都有自己的标准和编程框架,不容易改变。在几乎每一种情况下,无论从供应商使用的无服务器功能,将由另一个供应商进行不同的实现。如果要切换供应商,几乎肯定需要更新操作工具(部署,监控等),可能还需要更改代码。

三、结合项目经验详细论述无服务器架构的应用,并分析效果如何,哪些方面做得好,哪些方面做得不好。

更新时间:2021-11-23 08:05

你可能感兴趣的试题

单选题

(  )is the process of transforming information so it is unintelligible to anyone but the intended recipient.

  • A.Encryption
  • B.Decryption
  • C.Security
  • D.Protection
查看答案
单选题

As each application module is completed,it undergoes(  )to ensure that it operates correctly and reliably.

  • A.unit testing
  • B.integration testing
  • C.system testing
  • D.acceptance testing
查看答案
单选题

(  )algorithm specifies the way to arrange data in a particular order.

  • A.Search
  • B.Random
  • C.Sorting
  • D.Merge
查看答案
单选题

After analyzing the source code,(  )generates machine instructions that will carry out the meaning of the program at a later time.

  • A.an interpreter
  • B.a linker
  • C.a compiler
  • D.a converter
查看答案
单选题

(  )can help organizations to better understand the information contained within the data and will also help identify the data that is most important to the business and future business decisions.

  • A.Data processing system
  • B.Big Data analytics
  • C.Cloud computing
  • D.Database management
查看答案
单选题

浏览器开启无痕浏览模式后,(  )依然会被保存下来。

  • A.浏览历史
  • B.搜索历史
  • C.已下载文件
  • D.临时文件
查看答案
单选题

下列协议中,不属于TCP/IP协议簇的是(  )。

  • A.CSMA/CD
  • B.IP
  • C.TCP
  • D.UDP
查看答案
单选题

下列传输介质中,带宽最宽、抗干扰能力最强的是(  )。

  • A.双绞线
  • B.红外线
  • C.同轴电缆
  • D.光纤
查看答案
单选题

数控编程常需要用参数来描述需要加工的零件的图形。在平面坐标系内,确定一个点需要2个独立的参数,确定一个正方形需要(  )个独立的参数。

  • A.3
  • B.4
  • C.5
  • D.6
查看答案
单选题

某书的页码为1,2,3,...,共用数字900个(一个多位数页码包含多个数字),据此可以推断,该书最大的页码为(  )。

  • A.237
  • B.336
  • C.711
  • D.900
查看答案