Лучше перезапустить потоки в приложении или сервер перезапустит все приложение? - PullRequest
0 голосов
/ 16 февраля 2020

У меня есть приложение python, которое отслеживает автобусы в моем городе для определенных данных, используя их API прибытия. У меня ограниченное количество звонков, которые я могу сделать, и я не хочу их перегружать в любом случае, поэтому в настоящее время я использую 30 потоков для отслеживания данных на определенных автобусных остановках каждый день. Каждый поток случайным образом выбирает автобусную остановку и непрерывно отслеживает данные для автобусов, которые прибывают на эту остановку.

Идея состоит в том, что я хочу, чтобы в конечном итоге я получал данные хотя бы за один день на каждой автобусной остановке, но я думаю, Порядок следования автобусных остановок может привести к проблемам с получением данных от тех же водителей. Мое решение состоит в том, что каждый раз, когда я запускаю поток, я случайным образом выбираю автобусную остановку из полного списка автобусных остановок, а затем помещаю ее в другой список тех, которые я уже отслеживал (он выбирается случайным образом, пока не получит ту, которая еще не отслеживался). Когда список имеет ту же длину, что и полный список, он очищается (имеется в виду, что за каждую остановку отслеживаются данные за день), и мы повторяем цикл до тех пор, пока он снова не заполнится, и т. Д. c.

tldr вот часть, которая меня интересует: Я хочу остановить свои текущие запущенные темы и получать новые темы в 2:00 AM каждую ночь. Если я хочу достичь этого, было бы лучше написать что-нибудь в моем приложении, которое делает это, или выполнить работу cron, или просто перезапустить приложение на сервере в 2:00 ночи каждую ночь?

Вот код для справки:

if __name__ == "__main__":

    numstops = 30
    stops_to_track = make_stop_list(numstops)

    for stop in stops_to_track:
        _thread.start_new_thread(track_data, (stop,))
        time.sleep(10)

    while True:
        pass

1 Ответ

0 голосов
/ 16 февраля 2020

На самом деле, неважно. Я провел некоторое исследование, и кажется, что было бы лучше просто изменить параметры в 2 часа ночи.

...