Как убедиться, что только одна задача грабежной тяги работает за раз?
-
02-10-2019 - |
Вопрос
Я хочу настроить грабные задачи для запуска через Cron. Это легко, но что не просто, гарантирует, что только одна копия этой задачи на граблях работает одновременно. Предлагаю, что я мог бы использовать PS в системе, чтобы проверить, а затем выйти из задачи на граблях, если она уже работает, или я мог бы сделать задержкую структуру задания, где я сериализую имя задачи и после завершения, я удаляю его сформировать БД, но Что вы все рекомендуете?
Решение
Unix решил эту проблему с файлами PID. Файлы PID расположены в / var / Run и содержат идентификатор процесса программ. Вот человек страницы: http://fuse4bsd.creo.hu/localcgi/man-cgi.cgi?pidfile+3.
Вы можете найти его немного старомодно (и я согласен), но это часто используется и проверенный метод.
Другие советы
Вы можете использовать https://rubygems.org/gems/only_one_Rake., Как и пространство имен: Rails do desc "- это онлайн-счет пользователя" onlue_one_task: online_user_count =>: окружающая среда. Сон 1} Конец конец