|
-1 / 7 / 0
Регистрация: 03.02.2014
Сообщений: 100
|
||||||
Как ограничить количество запусков одного скрипта18.10.2015, 17:58. Показов 2187. Ответов 7
Метки нет (Все метки)
Здравствуйте! Есть скрипт, который очень долго выполняется. Ну например какой-то парсер. И нужно сделать так, чтоб его невозможно было запустить 2 раза одновременно. Как это можно реализовать? В гугле нашел такой способ:
Может есть ещё какие-то способы ограничить повторный запуск скрипта?
0
|
||||||
| 18.10.2015, 17:58 | |
|
Ответы с готовыми решениями:
7
Как ограничить количество запросов в базу данных с одного ip? Ограничить количество запусков программы Ограничить количество запусков программы |
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|
| 18.10.2015, 18:49 | |
|
Кстати, недавно думал над этим вопросом. Пока придумал только записывать состояние в БД. В начале скрипта записываем locked = true, после окончания - false. Ну и проверяем это поле перед началом парсера, если true - делаем die().
1
|
|
|
-1 / 7 / 0
Регистрация: 03.02.2014
Сообщений: 100
|
|
| 18.10.2015, 18:50 [ТС] | |
|
Спасибо, надо попробовать!
0
|
|
|
36 / 36 / 18
Регистрация: 01.01.2015
Сообщений: 287
|
|
| 18.10.2015, 19:22 | |
|
lockf для FreeBSD flock для линукса.
рекомендую юзать эти команды не в скрипте пхпшном, а в команде запуска. т.к. реализация для блокировки через базу не тривиальная + в пхпшном скрипте оч легко допустить ошибку => может поломатся блокировка
0
|
|
|
-1 / 7 / 0
Регистрация: 03.02.2014
Сообщений: 100
|
|
| 18.10.2015, 19:59 [ТС] | |
|
Jodah, да, возникают проблемы, если скрипт завершается из-за какой-то ошибки. В моём случае это max execution time exceeded, и файл уже не отпирается.
Добавлено через 2 минуты evgenkur, я тестю на винде. В линуксе и FreeBSD к сожалению не разбираюсь. Мне бы вариант, чтоб работало не зависимо от операционки сервака...
0
|
|
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|
| 18.10.2015, 20:21 | |
Сообщение было отмечено Altai90 как решение
Решение
Altai90, а какой этот max execution time? Стандартно 30 сек?
Можно добавлять в БД время последнего запуска. И если с момента запуска прошло более 30 сек - разрешать следующий запуск.
1
|
|
|
36 / 36 / 18
Регистрация: 01.01.2015
Сообщений: 287
|
|
| 18.10.2015, 20:33 | |
|
0
|
|
|
-1 / 7 / 0
Регистрация: 03.02.2014
Сообщений: 100
|
|
| 18.10.2015, 22:47 [ТС] | |
|
Jodah, отлично, всё получилось, спасибо за подсказки!
0
|
|
| 18.10.2015, 22:47 | |
|
Помогаю со студенческими работами здесь
8
Ограничить количество запусков программы Delphi
Как из одного скрипта изменить переменную (int) другого скрипта? Копирование текста из одного скрипта в другой и разделение одного скрипта на два
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|