我有一个cron作业,每15m运行一次Py脚本。该脚本的工作方式是将最后的记录从数据库中拉回15m并将其推送到外部API。
这是代码的相关部分:
try:
with db.cursor() as cur:
query = """
select idfa, idfv, product_id from ios_purchase where purchase_date >= %s and purchase_date <= %s
"""
cur.execute(query, data)
for row in cur:
params['advertising_id'] = row[0]
params['developer_device_id'] = row[1]
params['product_id'] = row[2]
params['price'] = 3.99
r = requests.post('https://xxx.xxx.io/v0/p', auth=(config['xxx']['API_KEY'], ''),
params=params)
print(date_end, r.url, r.status_code, r.content)
except:
print("db error purchase")
sys.exit(1)
当我尝试在数据库上手动运行查询时,我得到了预期的记录数。
但是,在检查日志时,有时会发生并非所有请求都经过的情况,例如我要推送的数据库中有5条记录,而日志中只有4个请求。
我通常是PHP开发人员,所以我不知道这是否是一些“预期的” Python问题,在短时间内出现了多个请求?
有什么想法吗?