amazon-web-services - 我应该在单个 Lambda 函数中定义我的 Lambda 函数还是分别定义每个函数
问题描述
由于 Lambda 每次调用都会向我收费,如果我在单个文件中定义所有函数不是更划算吗?还是不管 .py 文件如何,他们是否按函数调用收费?
解决方案
对于定价,您按毫秒级别收费,因此每个功能越快越紧越好。
为了与“微服务”的理念和设计保持一致,并遵循 SOLID 原则中的“S”,您通常需要一个 lambda 函数来做一件事。
当你开始让 lambda 函数做两件事或更多事情的那一刻,你现在就将这些 lambda 和逻辑联系在一起了。理想情况下,一个 lambda 函数不需要知道另一个 lambda 函数。
您可以让一个 lambda 调用另一个,但您通常需要某种事件编排来为您执行此操作,例如 Eventbridge、SNS 或 Step Functions。
因此,我会避免将 3 组功能放入一个 lambda 函数中,因为现在您极大地限制了该函数可能被应用程序的其他部分重用的能力。
推荐阅读
- javascript - 在 React 中,如果 Web 浏览器的宽度小于,如何防止使用函数 onClick
- arrays - 在排序数组中执行插入操作
- javascript - 如果使用 Leaflet.markercluster,Leaflet VectorGrid 交互性将不起作用
- php - 变量“错误”不存在 - Symfony
- javascript - 我应该在以下代码中使用承诺还是回调?
- python - 具有归一化频率的字典中的词云
- javascript - 无法将值从 main.js 传递到 index.html
- node.js - Nestjs:猫鼬中子文档数组的正确架构(没有默认_id或重新定义ObjectId)
- java - Firebase 使用 Update 方法不断更新,并且不会停止?
- javascript - 更改视频源时不调用侦听器 MesiboGroupCall_OnVideoSourceChanged