Python Aws lambda函数连接到mongodb

Python Aws lambda函数连接到mongodb,python,mongodb,amazon-web-services,aws-lambda,Python,Mongodb,Amazon Web Services,Aws Lambda,我有一个简单的lambda函数,它连接到数据库并查找用户 import pymongo def my_handler(event, context): client = pymongo.MongoClient('uri') #My db connection here. db = client.dbName col = db.users col.find_one({'email':'example@gmail.com'}) foundedUser =

我有一个简单的lambda函数,它连接到数据库并查找用户

import pymongo

def my_handler(event, context):
    client = pymongo.MongoClient('uri') #My db connection here. 
    db = client.dbName
    col = db.users
    col.find_one({'email':'example@gmail.com'})
    foundedUser = col.find_one({'hello':'Amazon DocumentDB'})
    print(foundedUser)
    client.close()
我遇到了一个奇怪的问题,有时候lambda连接并找到用户,比如100ms甚至更短。 但有时30秒后会出现超时错误。 我有所有的vpc配置等等。 我曾尝试使用node.js实现它,现在尝试使用python,结果是一样的。
有什么建议吗?

所以我遇到了同样的问题。看看这些

还有这个

显然,AWS Lambda是“无状态”的,按照我的理解,一旦在冷启动时调用该函数,它就会运行代码并连接到数据库。在此之后,在特定时间(比如5分钟)内对Lambda函数进行的任何调用都将使用相同的连接。之后,如果关闭连接并再次调用函数,Lamda不会重新建立到数据库的连接


希望这些教程能帮助设置它,以便它在每次函数调用时检查连接。

我在上面的代码中看不到lambda函数。@StamatisTiniakos添加了函数定义。你什么意思?在python中,lambda看起来像-->。除非你指的是别的什么?我指的是AWS Lambda函数。我连接到AWS lambda函数内的数据库,如下所示: