Skip to content

结课测试关于Serverle这些知识,你都掌握了吗?

现在咱们的课程结束了,恭喜你顺利学完《玩转 Serverless 架构》中所有的内容,不知道你掌握的怎么样呢?我为你准备了一套结课测试题。

它是对你课程学习效果的一个检验,你也可以把它当作对课程的系统性回顾。

我们的测试题目一共包括 20 道题(单选与多选),每题 5 分,满分 100 分。记得在留言区写下你的答案哦,另外我会在结束语中公布正确的答案。

好了,请开始你的测试吧。加油!


1. 下面关于 Serverless 定义的说法错误的是?

A Serverless 不需要服务器

B Serverless 是指构建和运行软件时不需要关心服务器的一种架构思想

C 目前 Serverless 的主流实现是 FaaS + BaaS

D Serverless 是云原生的一种实现

2. 一个应用如果是 Serverless 架构的,必须要实现自动弹性伸缩和按量付费。

A 正确

B 错误

3. (多选)下面哪些选项是 Serverless 应用的特点?

A 自动弹性伸缩

B 按量付费

C 事件驱动

D 运维成本高

4. Serverless 只能用来开发无状态的应用,不能用来开发有状态的应用。

A 正确

B 错误

5. 下面关于 Serverless 函数启动过程说法错误的是?

A 函数启动过程分为冷启动和热启动

B 冷启动耗时较长,热启动耗时很短

C 热启动时函数会重复利用上一次的执行上下文

D 函数每次执行都需要经过冷启动

6. 函数的启动过程包含下载代码、启动容器、启动运行环境、执行代码四个步骤,前三个步骤为冷启动,最后一个步骤为热启动。

A 正确

B 错误

7. 运行 Serverless 函数代码的 FaaS 平台通常是容器技术实现运行环境隔离的。

A 正确

B 错误

8. 不同 FaaS 平台的触发器和入口函数定义是完全一致的。

A 正确

B 错误

9. Serverless 应用的代码依赖和系统依赖都需要安装在项目中,并和应用代码一起部署到 FaaS 平台。

A 正确

B 错误

10. FaaS 平台的自定义运行时本质上是实现一个自定义的 HTTP 服务。

A 正确

B 错误

11. (多选)下面哪个关于 Serverless 应用单元测试的描述是错误的?

A Serverless 应用由于其分布式、依赖云服务、事件驱动等特性,导致编写单元测试很困难

B 为了方便编写单元测试,需要将业务逻辑和依赖的云服务分离开来

C 编写单元测试时,需要考虑速度、隔离性、单一职责等因素,避免单元测试成为开发的负担

D 为了代码快速上线,我们可以不编写单元测试

12. (多选)下面哪些方案可以提升 Serverless 应用的性能?

A 提前给函数预热

B 减小代码体积、减少不必要的依赖

C 选择 Node.js、Python 等冷启动耗时短的编程语言

D 为函数设置合适的内存和并发

13. (多选)下面关于在 Serverless 应用中使用访问控制说法正确的是?

A 云厂商主要通过主账号、角色、权限策略等方式来实现云上资源的访问控制

B 通过访问控制,我们能实现分权、云服务授权、跨账号授权等云上资源管控需求

C 为了安全,我们需要为函数设置最小的权限

D 为了方便,我们可以给直接给函数设置尽可能大的权限

14. (多选)下面关于 Serverless 应用安全的说法正确的是?

A 在云上运行的应用,云厂商负责计算、网络、存储等底层资源的安全性,应用所有者负责应用本身的安全性

B Serverless 安全性面临的主要挑战是:越来越多的攻击面、越来越复杂的攻击方式、可观测性不足,以及传统安全测试方法和防护方案不适用于 Serverless 架构

C Serverless 安全性的面临的风险有:函数事件数据注入、身份认证无效、用户或角色权限过高、敏感数据泄漏、DDoS 攻击等

D Serverless 应用无须运维,所以 Serverless 应用很安全,不需要我们关心

15. (多选)下面哪些方案可以提升 Serverless 应用的安全性?

A 对于提供 API 服务的 Serverless 应用,使用 API 网关代替 HTTP 触发器

B 在代码中尽可能使用临时访问凭证

C 对存储在云上和需要传输的数据进行加密

D 使用日志服务等产品统一记录函数执行的日志

16. (多选)下面哪些方案可以节省 Serverless 应用的成本?

A 为函数设置超时时间,避免函数因为异常而无限制地运行下去

B 为函数分配合适的内存,在不影响性能的情况下减少资源消耗

C 为函数实例设置合适的并发,使多个请求共用一个实例

D 提升函数的性能

17. Serverless 应用的成本包括 FaaS 中函数执行的成本,以及函数所依赖的触发器、数据源和 BaaS 服务的成本。

A 正确

B 错误

18. (多选)下面关于传统应用迁移到 Serverless 架构的说法正确的是?

A 传统应用迁移到 Serverless,想要考虑内存缓存、身份认证、持久化存储、Web 服务 Serverless 化等改造点

B 如果一个应用本身就是分布式部署的,且在架构上是计算和存储分离的,比较容易迁移到 Serverless

C Web 服务 Serverless 化主要原理是实现一个自定义 HTTP 服务,通过该 HTTP 服务处理事件对象和 Web 请求的差异

D 传统应用不需要改造就可以直接迁移到 Serverless

A 正确

B 错误

20. 将可以执行文件(如 ffmpeg)部署到函数计算时,如果可执行文件在本地权限是 -rwxr-xr-- ,我们可以直接将其上传到函数计算平台,并在代码中使用。

A 正确

B 错误