我有一个API,可以将几个文件一次加载到内存中,然后以某种方式处理这些文件以生成对客户端的响应。但是,每天都会更新数据。在数据更新后重新加载文件的最佳实践方法是什么?
更清楚地说,这是模式:
import pandas as pd
data = pd.read_pickle('data.pkl')
def process(data, query):
# return result of some query on data
...
class Query(Resource):
def get(self): # a GET request
query = request.args.get('param')
return process(data, query)
我当前的解决方案是在最初读取数据的同一文件中包含以下内容,我从计划的每日更新脚本中调用该文件。
class Reload(Resource):
def get(self):
global data
data = pd.read_pickle('data.pkl')