Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Как ограничить памаять, выделяемую CGI-скрипту (Apache, FreeBSD'4.5)?

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix
Предыдущая тема :: Следующая тема  
Автор Сообщение
Dmitry.Karpov http://www.
Гость





СообщениеДобавлено: Пн Ноя 11 2002 16:59    Заголовок сообщения: Как ограничить памаять, выделяемую CGI-скрипту (Apache, FreeBSD'4.5)? Ответить с цитатой

Есть WWW-сервер под FreeBSD'4.5, на нем крутятся Apace, MySQL и CGI-скрипты. Отчет о процессах показывает, что engine.cgi занимает 398541k. Как ограничить ему объем выделяемой памяти, а то он сжирает все (и RAM, и Swap) и тормозит по самое не могу?
Вернуться к началу
Борис
Гость





СообщениеДобавлено: Пн Ноя 11 2002 18:36    Заголовок сообщения: Re: Как ограничить памаять, выделяемую CGI-скрипту (Apache, FreeBSD'4.5)? Ответить с цитатой

Насколько я представляю документацию, сама FreeBSD не квотирует выделяемую память. Более того, для исполнения всех процессов она повышает приоритет тех процессов, которые долго не выполнялись, что приводит к большому количеству среднеприоритетных процессов, если низкоприоритетные быстро создаются, например, при большом количестве http-запросов. Эти среднеприоритетные процессы, наверное, и перенапрягают память.

Радикальные решения (на мой взгляд):
1) снизить количество одновременно поддерживаемых соединений, что для web-сервера не интересно,
2) написать скрипт-диспетчер, который все запросы помещает в очередь, это приведет к увеличению времени отклика, но в общем должно повысить производительность, так как будут снижены расходы на поддержание большого числа активных процессов, а эти расходы обычно растут непропорционально росту количества процессов.
Вернуться к началу
:)
Гость





СообщениеДобавлено: Пн Ноя 11 2002 18:43    Заголовок сообщения: Re: Как ограничить памаять, выделяемую CGI-скрипту (Apache, FreeBSD'4.5)? Ответить с цитатой

и чего делает этот самый скрипт? на чем написано ?
Вернуться к началу
Борис
Гость





СообщениеДобавлено: Пн Ноя 11 2002 19:07    Заголовок сообщения: Все на тех же CGI, perl, php (про *sh молчу, хотя при известных усилиях можно попробовать). А делает то же, что делает диспетче Ответить с цитатой

-
Вернуться к началу
:)
Гость





СообщениеДобавлено: Пн Ноя 11 2002 19:28    Заголовок сообщения: Re: Все на тех же CGI, perl, php (про *sh молчу, хотя при известных усилиях можно попробовать). А делает то же, что делает дисп Ответить с цитатой

мой вопрос был к вопрошавшему ... хм, каламбур конечно Smile
Вернуться к началу
TepKuH
Гость





СообщениеДобавлено: Пн Ноя 11 2002 19:39    Заголовок сообщения: Мне про такую штуку... Ответить с цитатой

расказывали на матриксе каждому пользователю выделяется определенные ресурсы(память, проц. время, и пр)
соответсвенно всем поражденым ему процессам

ЗЫ. Скрипт у тебе божественный полгига мозга в ноль
Вернуться к началу
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Пн Ноя 11 2002 20:49    Заголовок сообщения: Мыслишки (+) Ответить с цитатой

Для Линуха я видел патчи к ядру, которые позволяют жестко распределить аппетиты системных процессов и пользовательских прог.

Одно не ясно. Что сделает система, если проге надо 50 мег ОЗУ, а система не дает? Видимо будет убита прога. Это не есть хорошо...

Тут по моему два пути. Либо прогу переписывать и умерять аппетиты, либо сервак добивать памятью, ОЗУ и т.п. штучками.

Есть еще третий вариант. Написать прогу, которая следит за ОЗУ и динамически распределяет свои аппетиты. Но создание таких прог задача не для слабонервных...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
IGOR79



Зарегистрирован: 15.11.2002
Сообщения: 3
Откуда: Kharkow

СообщениеДобавлено: Пн Ноя 11 2002 23:49    Заголовок сообщения: Re: Мыслишки (+) Ответить с цитатой

на уровне apache:
1. apche 2.0 всё умеет это делать
2. suexec (модуль для апача) - посмотри что он может
уровень системы:
3. login.conf
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
:)
Гость





СообщениеДобавлено: Вт Ноя 12 2002 09:41    Заголовок сообщения: Re: Мыслишки (+) Ответить с цитатой

люди, во вы разошлись Smile поскольку как я понимаю речь идет о скрипте обрабатывающем БД, то дело немного в другом. в 80 % подобных случаев тормоза связаны с неверной структурой построения баз, индексов, нерационально составленными селектами и т.п. т.е. перетряхиваем сам скрипт и базу, насколько это возможно. кроме того у самого mysql-ля проблемы с производительностью на больших БД, ну тормозит оно и усе ...
Вернуться к началу
Борис
Гость





СообщениеДобавлено: Вт Ноя 12 2002 14:23    Заголовок сообщения: А сделай fork() раз 200 в секунду в течение 2 часов (+) Ответить с цитатой

Все-таки, думаю, речь идет не о скрипте как программе, а как о множестве процессов, которые порождаются при большом количестве обращений к серверу за короткое время.
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...