amazon-web-services - 多个 ENI Lambda 的源选择
问题描述
AWS Lambda 可以通过网络连接到 VPC 的多个子网。对于每个附加的子网(和安全组),Lambda 将具有(至少)一个ENI。
当具有多个子网/ENI 连接的 Lambda 向同一 VPC 中的目标发起流量时,哪些规则决定为发起的流量选择哪个子网/ENI?
AWS 可能会从附加的子网/ENI 中随机选择一个子网。如果是这样,它会正常工作,因为 VPC 的“本地”默认路由不关心原始子网。但它是随机的吗?
最近,AWS 对 Lambda 子网/ENI 附件进行了大修,以提高效率……以便创建和重复使用最少的 ENI,而不是每次执行 Lambda 时都创建一个新的 ENI。但这并不能改变问题。从根本上说,任何附加到多个子网的 Lambda 都需要为 lambda 生成的 VPC 内部流量选择一个附加子网(一个 ENI 输入)。
选择该子网的规则是什么?
解决方案
据推测,AWS 的明智选择是选择与函数将与之交互的目标端点位于同一子网内的 ENI。这将避免路由的开销,无论开销多么小。如果 lambda 函数未连接到与目标端点相同的子网,则子网选择可能是随机的或某些未记录的方法。我想运行一些实验会给你答案。
推荐阅读
- reactjs - 反应 SPA 中的 window.referrer 始终为空
- flutter - 需要对 FractionallySizedBox 的孩子的大小进行动画处理
- heroku - 如何将 github 存储库部署到包含多个项目的 heroku?
- c# - 如何检查 SQL SERVER 中的列是否在 C# 中自动递增?
- android - 如何在 Android 10 中读取设备信息?
- java - 以 Id 作为 Json 键的 ApiResponse 类
- kotlin - 有没有办法用声明类型的子类型覆盖抽象属性?
- typescript - 为什么在使用“sam invoke local”时调试会中断对 AWS::Lamba::LayerVersion 的访问?
- python - keras 不使用 ImageDataGenerator 将输入除以常数
- javascript - 如果我与数字进行比较并将结果分配给新变量,为什么 JS 会返回 NaN?