[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Зомби процессы
vlaimir
На хостинге стоит ограничение на 50 одновременно запущенных процессов. Сайт вылетает когда превышен этот лимит. Наблюдаю за сайтом через приложение top - там видно как нарастают zombie процессы. Что такое zombie процессы и как с ними бороться?



Спустя 17 минут, 30 секунд (27.11.2007 - 20:30) vasa_c написал(а):
http://ru.wikipedia.org/wiki/%D0%9F%D1%80%...%BC%D0%B1%D0%B8
Бороться — писать сценарии так, чтобы они нормально завершались

Спустя 12 минут, 26 секунд (27.11.2007 - 20:42) vlaimir написал(а):
Сайт написан на php, что нужно в него включить, чтобы завершать зомби процессы?

Спустя 2 часа, 33 минуты, 17 секунд (27.11.2007 - 23:15) vasa_c написал(а):
Покажите сценарий

Спустя 3 часа, 36 минут, 36 секунд (28.11.2007 - 02:52) vlaimir написал(а):
Код, отвечающий за вывод книги в библиотеке
<?
include("connect/setup.php");
$book_url = $_GET['book_url'];
$avtor_url = $_GET['avtor_url'];
$bookdir=CACHE_PATH_BOOK."/".$avtor_url."/";
$com_book_dir=CACHE_PATH_KOM_BOOK."/".$avtor_url."/";

//Если есть кэш книги - вкладываем его
if (file_exists($bookdir.$book_url))
{
//echo"Кэш";
include("dizain/up.shtm");
include($bookdir.$book_url);


//Если зарегистрирован
if (!isset ($login)) {include ("connect/add_bookobzor.php");}
else {include ("connect/add_bookobzor_log.php");}

//Если есть комментарий
if (file_exists($com_book_dir.$book_url)){include($com_book_dir.$book_url);}
else {include("dizain/view_book_obzor.php");}
echo "</table>";
include("dizain/up2.shtm");
include("dizain/niz.shtm");
exit();
}

//Иначе обращаемся к базе за книгой
include("connect/connect.php");
$query = "SELECT BookId,BookName, BookURLPage, BookPic,BookDescription,BookOrder,
BookURLMain, AuthorFIO, AuthorURLPage, CategoryName, CategoryURLName FROM $bookstable,$authorstable,$categoriestable
WHERE BookURLMain = '$book_url' and AuthorURLPage='$avtor_url' and $categoriestable.CategoryId = $bookstable.CategoryId";
$res = mysql_query($query) or die(mysql_error());
$row_num = mysql_num_rows($res);

//Если книга есть
if($row_num>0)
{
$row=mysql_fetch_array($res);
include("connect/tobook.php");

$categoryurlname= "/".$row['CategoryURLName']."/";
$categoryname= $row['CategoryName'];


$avtorname=$row['AuthorFIO'];
$authorurlpage="/".$row['AuthorURLPage']."/";
$bookid=$row['BookId'];

//Выводим книгу
include("dizain/up.shtm");

//Включаем запись кэша
ob_start();
echo "<TITLE> $bookname - $avtorname - $title</TITLE>";
echo "<table>";
include("dizain/dizain_books.php");

$buffer = ob_get_contents();
ob_end_clean();
if (!file_exists(CACHE_PATH_BOOK.$avtor_url)){
mkdir (CACHE_PATH_BOOK.$avtor_url);}

$f = fopen($bookdir.$book_url, 'w');
fwrite($f, $buffer);
fclose($f);

echo $buffer;

//Добавление комментариев

if (!isset ($login)) {include ("connect/add_bookobzor.php");}
else {include ("connect/add_bookobzor_log.php");}

//Если есть комментарий
if (file_exists($com_book_dir.$book_url)){include($com_book_dir.$book_url);}
else {include("dizain/view_book_obzor.php");}

echo "</table>";
include("dizain/up_2.shtm");
include("dizain/niz.shtm");
exit();
}
header('Location: http://example.com/');
?>

Спустя 3 дня, 14 часов, 59 минут, 35 секунд (1.12.2007 - 17:51) vlaimir написал(а):
В чем все же может быть дело? Может это у хостера с Апачем что-то?
Зомби процессы растут моментально. Причем то все месяцами нормально работает, а потом начинается...


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.