Я создал веб-сервис с cherrypy
, где я использую несколько разных файлов в качестве входных данных. Я хотел бы перезагружать эти файлы время от времени (например, каждый час) и получать ответ, пока файлы перезагружаются. Я ожидаю, что мне следует использовать многопроцессорность или многопоточность, но я не могу понять, как это сделать.
Класс выглядит следующим образом.
import pandas as pd
from datetime import datetime
some_file=pd.read_csv("file_name.csv")
now=datetime.now()
class ClassName(object):
def __init__(self,input):
self.input=input
def method_name(self):
return str(some_file.iloc[0,0])+"-"+str(now)+". "+str(self.input)
и веб-служба
from FileNameOfClassAbove import ClassName
import cherrypy
class WebService(object):
@cherrypy.expose
def index(self):
input=cherrypy.request.body.read()
input=input.decode('utf-8')
C=ClassName(input)
out=C.method_name()
return out
if __name__ == '__main__':
config = {'server.socket_host': '0.0.0.0'}
cherrypy.config.update(config)
cherrypy.quickstart(WebService())
Как мне перезагружать some_file
и now
каждый час? Более того, я ожидаю, что было бы лучше избегать глобальных переменных?