如何在cron作业中进行flask API调用时关闭db连接?

2024-05-07 23:38:11 发布

您现在位置:Python中文网/ 问答频道 /正文

cronjob通过管理会话使用不同的API调用连接到不同的数据库。每次通话后,我都要确保连接已关闭。在普通API调用的情况下,我可以使用before\u request打开,after\u request decorator关闭每个API调用,但是在cronjob中如何调用这些函数。cron作业中列出其中一个数据库的队列的代码如下所示:

def get_queue_list(session, access_token):
    queue_list = []
    headers={'Authorization': "Bearer " + access_token}
    r = session.get(queue_api, headers=headers)
    queue_list = json.loads(r.content)['queue_list']
    r.connection.close()

    return queue_list

在上面的代码段中,语句r。连接.关闭()确保数据库连接已关闭?我怎么检查?我在同一台服务器上安装了许多软件。这个cronjob为不同数据库的不同安装调用不同的api来定期处理。求你了,奎德

主要函数调用:

if __name__ == "__main__":
    print __doc__
    # base_url is read from a csv file
    queue_api = base_url + '/rt/api/v1.0/queues'

Tags: tokenapi数据库urlbasegetaccessqueue
1条回答
网友
1楼 · 发布于 2024-05-07 23:38:11

我相信你所需要做的就是r.close()如果你已经建立了到数据库的连接。我尝试使用游标和连接器函数调用查询(即select * from table)。如果我得到一个错误,我知道它没有连接。你知道吗

我还建议您在调用db connection函数后关闭连接。你知道吗

def get_queue_list(session, access_token):
    queue_list = []
    headers={'Authorization': "Bearer " + access_token}
    r = session.get(queue_api, headers=headers)
    queue_list = json.loads(r.content)['queue_list']

return queue_list, r

if __name__ == "__main__":
    print __doc__
    # base_url is read from a csv file
    queue_api = base_url + '/rt/api/v1.0/queues'
    r.close()

相关问题 更多 >