当前位置: 首页 > 知识库问答 >
问题:

从作为 API 网关的 Lambda 中建立数据库连接

万俟招
2023-03-14

据我所知,如果我要在API gateway后面放一个lambda函数,我将被要求在每个lambda函数调用上建立一个RDS连接。那会减慢速度,因为我不能共享连接。如果是这样的话,将一些REST服务迁移到api gateway lambda值得吗?

共有2个答案

郁光熙
2023-03-14

您应该会看到一些连接重用,尤其是在持续负载下。一些请求会得到一个最近处理了相同函数的暖容器,因此正如 Cagatay 提到的,处理程序之外的任何代码都可能被初始化。

处理程序代码应该能够设置为使用打开的连接,或者在必要时建立新的连接。

左丘成仁
2023-03-14

在AWS Lambda中,处理程序外部调用的代码在请求之间缓存。我不知道您使用的是哪种语言,但您可以查看这篇文章:http://blog.matthewdfuller.com/2015/12/aws-lambda-occasionally-reliable-caching.html

因此,如果您的数据库连接是在处理程序之外完成的,您会将其保留在不同的请求之间,并且不会为每个请求连接到您的数据库。

 类似资料:
  • 我在一个私有子网中有一个lambda函数,我想通过创建一个API网关来调用这个lambda函数,并且这个API只能由公共子网中的特定EC2实例调用(私有子网和公共子网在同一个VPC中),而不能由其他任何人调用。 有人能指导/建议我如何处理这个问题吗。

  • 我需要从endpoint获取一些数据,然后根据响应将这些数据存储到数据库中。

  • 我试图为一个编程类设置一个Java DB数据库。我正在遵循Deitel和Deitel教科书中的步骤: 我已经安装了JDK11.8.0_112。我运行的是Windows10。 我的安装在C:\program files\java\jdk1.8.0_112。我将JAVA_HOME var设置为C:\program files\java\jdk1.8.0_112 然后,连接'jdbc:derby:new

  • 我无法使用来自Lambda函数的Node连接到MySQL数据库。我收到的错误是。 有人有什么解决方案吗? 以下是我的状态概述: > AWS RDS数据库是一个MySQL数据库。它不限于专有网络(我可以使用MySQLWorkbench中的主机/用户/密码进行连接) 我的Lambda函数的执行角色被设置为将Lambda作为受信任的实体并给予管理员访问权限 在我的本地机器上,我安装了mysql模块,压缩

  • 我使用API网关调用了一个Lambda函数。当Lambda命中child_process对象上的spawn调用时,API网关立即失败,出现504超时错误。我在API网关上的超时设置是最大30秒,而Lambda设置为一分钟。lambda运行最多只需要1400ms,但它仍然在API中报告超时。在API网关获得504之后Lambda成功运行。 这发生在调用FFMPEG和调用Sharp库调整图像大小的过程

  • 我需要您的帮助来建立到weblogic数据源的连接。在java bean的前面,我使用下面的代码建立到数据库的连接: 现在,我需要使用JNDI名称从weblogic datasource获得连接。我已经创建了数据源,它被称为jdbc/hr,我尝试了下面的代码,但没有成功建立连接: