aws mysql链接_AWS Lambda和MySQL连接处理

我目前正在使用awslambda(python3.6)与MySQL数据库进行通信。我还有Slack命令来触发对数据库的查询。有时,我注意到,我可以直接通过MySQL Workbench进行更改,然后通过Slack触发一个查询,Slack返回旧值。我目前在python处理程序之外连接到MySQL,如下所示:BOT_TOKEN = os.environ["BOT_TOKEN"]

ASSET_TABLE = os.environ["ASSET_TABLE"]

REGION_NAME = os.getenv('REGION_NAME', 'us-east-2')

DB_NAME = os.environ["DB_NAME"]

DB_PASSWORD = os.environ["DB_PASSWORD"]

DB_DATABASE = os.environ["DB_DATABASE"]

RDS_HOST = os.environ["RDS_HOST"]

port = os.environ["port"]

try:

conn = pymysql.connect(RDS_HOST, user=DB_NAME, passwd=DB_PASSWORD, db=DB_DATABASE, connect_timeout=5, cursorclass=pymysql.cursors.DictCursor)

cursor = conn.cursor()

except:

sys.exit()

MySQL连接是在我程序最上面的任何定义之外完成的。Slack发送命令时,我调用另一个定义,然后查询MySQL。这有时工作正常,但其他时候可以发送我的旧数据,没有更新。整个布局是这样的:

进口

SQL连接

SQL查询定义

处理程序定义

我尝试将MySQL连接部分移到处理程序内部,但是SQL查询定义无法识别我的游标(我猜超出了范围)。在

所以我的问题是,如何处理这个MySQL连接?最好将MySQL连接放在任何定义之外吗?每次都要打开和关闭连接吗?为什么我的数据过时了?Lambda会一直运行整个例程还是会尝试在服务器之间分配负载(我发誓我读到了一些我不能依赖Lambda来始终读取我的整个例程的地方;有时它只读取处理程序)?在

我对这一切都很陌生,所以任何建议都非常感谢。谢谢!在

其余代码如果有帮助:

^{pr2}$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值