- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
есть скрипт, который запускается каждые 10 мин через крон командой:
cd /path/; php script.php
скрипт функцию выполняет, но php зависает и вечно висит в процессах загружая одно ядро на 100%
с каждым запуском создаётся новый процесс и тд. в результате создаётся не реальная нагрузка на сервер
в php.ini max_execution_time=60
ос centos 5
php 5.3
man limits.conf
Отредактируйте /etc/security/limits.conf - настройте через PAM лимиты для пользователя, от которого работает данный кронтаб (надеюсь, не root). Наиболее интересны Вам должны быть: rss, cpu, nproc, nice.
PS: И, конечно, "программисту" скрипта нужно что-то узнать о лок-файлах. Более чем вероятно, что запуск нескольких скриптов - "логикой" их работы вовсе не предусмотрен.
Если запускать скрипт из командной строки то php.ini не обязательно будет читаться (или не обязаельно будет читаться нужный)
можете сделать установить max_execution_time через ini_set
Если скрипт не просто висит в памяти, но и грузит CPU на 100%, то он явно что то делает еще. Просто при запуске в консоли за сколько выполняется ваш скрипт?
делайте отладку кода, например, методом половинного деления или подробным логированием происходящего.
скрипт через веб выполняется моментально. подобным способом запускаю, так как не хватает прав
скрипт через веб выполняется моментально. подобным способом запускаю, так как не хватает прав
Установите strace - посмотрите что делает скрипт.
А чем не вариант запустить "через web": wget -q http://site.ru/script.php ?
скрипт через веб выполняется моментально. подобным способом запускаю, так как не хватает прав
Вы ответили на свой вопрос, путь решения вам верно предложили:
Установите strace - посмотрите что делает скрипт.
А чем не вариант запустить "через web": wget -q http://site.ru/script.php ?
От себя могу так же посоветовать lynx, если по каким то причинам нет wget.
прописал в скрипте
ini_set('max_execution_time',60);
помогло
а почему php не видит эту настройку из своего конфига?
прописал в скрипте
ini_set('max_execution_time',60);
помогло
Сомневаюсь... Раз, по Вашему описанию - скрипт "из веб" выполняется моментально.
а почему php не видит эту настройку из своего конфига?
Наверно, потому что это не его конфиг? Ы?
phpinfo() показывает где лежит конфиг и изменения в нём применяются