Flask и concurrent.futures для 200-линейного маршрута - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть маршрут флешки, который обрабатывает тест веб-сервера, он состоит из 200 строк, я хотел бы знать, было ли использование TreadPoolExecutor лучшим решением для выполнения более одной строки за раз или был ли лучший подход.Любая помощь очень ценится.

Идея состоит в том, что если я смогу пробежать 4 линии за раз, маршрут завершится быстрее, поскольку в настоящее время это может занять до 2-3 минут.

from flask import Flask, render_template
from time import sleep
from concurrent.futures import ThreadPoolExecutor


executor = ThreadPoolExecutor(4)

app = Flask(__name__)

@app.route('/jobs')
def run_jobs():
executor.submit(server_test, url)


def server_test(url):
    site = request.form['url']
    print("Server testing {} ".format(site))

    1. test 1 # has to wait for a response
    2. depending on test 1 do this or go to 3.
    200.
    return render_template('responses.html')

if __name__ == '__main__':
app.run()
...