viv*_*ura 2 lambda amazon-web-services aws-api-gateway
我们是一个由10名开发人员组成的团队,致力于将流程密集型工作从Heroku上的Rails应用程序迁移到AWS Lambda(Java)。我们无法决定是通过API网关还是直接通过AWS Ruby SDK调用lambda函数。根据使用情况,我们可能还必须异步调用lambda。我们的有效载荷非常小(<1-2 KB)。我们正在考虑直接调用,主要是为了最大化执行时间。我们在这里寻找指针:
直接 lambda 调用速度更快,因为少了一跳网络。我怀疑您是否可以直接比较 lambda/APIG 的 IAM 验证延迟,但我们已经对 lambda-lambda 调用和 lambda-APIG-lambda 调用进行了基准测试,其中 lambda 不起作用,即仅返回事件对象。平均时间如下:
拉姆达-拉姆达:27ms
λ-APIG:47ms
因此,额外跃点的税费为 20 毫秒。只要可行,我们就会使用 lambda-lambda 调用,尤其是对于我们不想公开的 lambda。
如其他人所述,添加API Gateway不会提高性能,但会增加额外的开销。如果API网关提供的任何其他功能对您有用,请使用它。如果您控制客户端,则可以在客户端上获得凭据,具有直接调用Lambda函数的权限,并且不需要/不需要任何其他API Gateway功能(直接调用Lambda即可)。
| 归档时间: |
|
| 查看次数: |
1845 次 |
| 最近记录: |