Cherrypy и многопроцессорная обработка / многопоточность - PullRequest
0 голосов
/ 17 марта 2020

Я создал веб-сервис с 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 каждый час? Более того, я ожидаю, что было бы лучше избегать глобальных переменных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...