Skip to Content
云原生:运用容器、函数计算和数据构建下一代应用
book

云原生:运用容器、函数计算和数据构建下一代应用

by Boris Scholl, Trent Swanson, Peter Jausovec
May 2020
Beginner to intermediate
215 pages
3h 58m
Chinese
China Machine Press
Content preview from 云原生:运用容器、函数计算和数据构建下一代应用
最佳实践
173
计算的一些解决方案,如 Azure Durable Functions 或者 AWS Step Functions
6.6.3 函数应保持轻量和简单
一个函数只应该做一件事,并且应该依赖很少的外部库。函数中任何额外的或者多余的
代码都会使函数的体积变大,影响启动时间。
6.6.4 实现无状态函数
不要在函数中保存任何数据,因为函数实例通常运行在其自身的隔离环境中,函数之间
不要共享任何东西,哪怕是同一个函数的不同调用也不要共享数据。
6.6.5 分离函数入口和函数的业务逻辑
函数都有其入口,可以被函数计算框架调用。框架特定的上下文通常与调用上下文一起
传递到函数入口。例如,如果通过 API 网关发送一个 HTTP 请求来调用函数,那么上下
文中将包含 HTTP 相关的详细信息。入口方法应将这些上下文的详细信息与其余代码分
开。这将改善函数的可管理性
可测试性和可移植性。
6.6.6 避免长时间运行的函数
大多数函数即服务(FaaS)产品都会对每个函数的可执行时间设置一个上限。因此,长
时间运行的函数可能会导致加载时间变长
超时等问题。尽可能重构大的函数,把其拆
分为几个可以一起工作的小函数。
6.6.7 用队列解决跨函数通信问题
函数间的通信应该靠消息队列来发送消息,而不是直接通过函数相互调用来传递信息。
函数应当通过队列中的事件(消息插入
删除
更新,等等)来触发和执行。
6.7 运维
运维实践是组织能否利用好云技术的基石。在第 5 章中我们已经讨论了云原生应用利用
DevOps 的基本原则和一些最佳实践。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey
数字化转型:企业破局的34 个锦囊

数字化转型:企业破局的34 个锦囊

Gary O’Brien, Xiao Guo, Mike Mason
Python程序设计:人工智能案例实践

Python程序设计:人工智能案例实践

保罗 戴特尔, 哈维 戴特尔

Publisher Resources

ISBN: 9787111653240