Предел запущеных процессов и crontab
include('vars.inc.php'); include('function.php'); $conn=db_connect($MYSQL_HOST,$MYSQL_USER,$MYSQL_PASSWORD, $MYSQL_CHARSET); if(!$conn) { echo "Нет соединения с БД"; exit(); } db_select($MYSQL_DB_NAME, $conn); $url = 'http://news.auto.ru/rss/category_rusnews.rss'; $rss = simplexml_load_file($url); $news = 0; foreach ($rss->channel->item as $item) { $item->title = iconv("UTF-8","windows-1251",$item->title); $item->link = iconv("UTF-8","windows-1251",$item->link); $item->description = iconv("UTF-8","windows-1251",$item->description); if(!db_query_count("SELECT COUNT(`Message_ID`) FROM `Message71` WHERE `url`='".mysql_value($item->link)."'", $conn)) { $query = db_query("INSERT INTO `Message71` VALUES (NULL, 1, 99, 123, 1, '', 1, NULL, NULL, '127.0.0.1', 'Opera/9.80 (Windows NT 6.0; U; ru) Presto/2.6.30 Version/10.60', 0, '".date('Y-m-d H:i:s', time())."', '".date('Y-m-d H:i:s', time())."', 0, NULL, NULL, NULL, '".date('Y-m-d H:i:s', strtotime($item->pubDate))."', '".mysql_value($item->title)."', '".mysql_value($item->description)."', '".mysql_value($item->description)."', '".mysql_value($item->link)."')", $conn); $news++; } } echo 'Added '.$news.' News'; Вот скрипт для сбора новостей. Запущен в cron с выполнением раз в 30 минут. Сайт перестал работать через несколько дней. Хостер сказал что причина в превышении лимита запущенных одновременно процессов. Получается скрипт не выгружался из памяти. Не совсем понятно по какой причине он не выгружался, не было бы вопросов если бы у меня к примеру было бы прописано set_time_limit(0);, но а тут же он должен как я понимаю автоматически обрубиться при превышении лимита 30 или 60 секунд (базовая настрока в php.ini). Или тут есть еще какие-либо тонкости? |
1. вы не указали хостера
2. вы делаете возможно неправильный вывод и предлагаете его обсуждать 3. что ещё работает на хостинге кроме вашего скрипта по cron 4. вы утверждаете что везде php.ini одинаковый который даже не показали. далее можно предполагать что сервера везде одинаковые, хостеры везде одинаковые и т.д. |
1. хосетр: sweb.ru
2. возможно 3. работает сайт... но хостеры сказали что висят задания с кронтаба 4. согласен, как думаете, может если прописать set_time_limit(30); то это поможет делу? Вся проблема осложняется тем, что у меня нет доступа к хостингу, а общение с хостером происходит через посредника... |
Цитата:
|
Часовой пояс GMT +3, время: 15:30. |