cronjob使用管理会话使用不同的API调用连接到不同的数据库。每次通话后,我想确保连接已关闭。在正常的API调用的情况下,我可以在每次API调用之后使用before_request打开,并使用after_request装饰器关闭,但是在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.connection.close()是否确保数据库连接已关闭?我该如何检查?我在同一台服务器上有很多安装。此cronjob为不同数据库的不同安装调用不同的API,以进行定期处理。请放弃
主要功能调用:
if __name__ == "__main__":
print __doc__
# base_url is read from a csv file
queue_api = base_url + '/rt/api/v1.0/queues'
答案 0 :(得分:0)
如果您已经与数据库建立了连接,我相信您需要做的只是r.close()
。我尝试使用游标和连接器函数调用查询(即select * from table
)。如果出现错误,我知道它没有连接。
我还建议您在调用数据库连接功能后关闭连接。
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()