Вы можете использовать файл блокировки, чтобы предотвратить запуск нескольких скриптов в cron.См. Ответы на предыдущий вопрос « Python: модуль для создания файла блокировки на основе PID ».На самом деле это просто хорошая практика для всего, что вам нужно, чтобы убедиться, что не будет запущено несколько экземпляров, поэтому вы должны изучить его, даже если у вас постоянно работает скрипт, что я делаю предложить.
Для большинства вещей не должно быть слишком сложно избежать утечек памяти, но если у вас много проблем с этим (я иногда делаю со сложным третьимнапример, я бы предложил написать сценарий с небольшим, тщательно спроектированным основным циклом, который отслеживает базу данных на наличие новых заданий, а затем использует многопроцессорный модуль для отсоединения новых процессов.для выполнения каждой задачи.
Когда задача завершена, дочерний процесс может завершиться, немедленно освобождая любую память, которая не собирается должным образом, и основной цикл должен быть достаточно простым, чтобы вы могли избежать любых утечек памяти.
Это также дает то преимущество, что вы можете запускать несколько задач параллельно, если ваша система имеетили чем одно ядро процессора, или если ваши задачи тратят много времени на ожидание ввода / вывода.