Apache постоянно резервирует оперативную память, пока не завесит винду.

firstborn

Новичок
Apache постоянно резервирует оперативную память, пока не завесит винду.

PhP 5.2.1/ Apache 1.3.3 (API PhP) / WinXP

После запуска Apache начинает забирать оперативную память свыше 300МБ и дальше... Пока Xp не зависает.

В самой конфигурации апаче не нашел ничего насчет резервации оперативной памяти, подскажите как исправить эту проблему, потому что перезапускать его это не дело.
 

phprus

Moderator
Команда форума
firstborn
Попробуй обновить Apache. Версия 1.3.3 уже очень давно устарела. У меня стоит Apache 1.3.34 и все работает нормально. (более 20 метров памяти обычно не использует). php и винда у меня такиеже.
 

firstborn

Новичок
Не не совсем, если люди не серве не висят он нормально работает а как только начинают шариться сразу кушать начинает, тоесть такое ощущение что он кеширует что то в память постоянно.
 

Gorynych

Посетитель PHP-Клуба
firstborn

если PHP 5 версии и работаете с объектами, то такая ситуация может происходить при некорректных конструкторах/вызовах. Например: класс А в процессе инициализации вызывает класс/метод класса Б, который, в свою очередь вызывает какой-то метод класса А, который еще не определен до конца. Такая ситуация может возникать при использовании, например, статических методов и происходить уже в процессе выполнения (не ловиться на этапе синтаксического разбора)
 

hermit_refined

Отшельник
Gorynych
можете привести пример?..
непонятно даже, что такое "какой-то метод класса А, который еще не определен до конца".
 

firstborn

Новичок
Поставил апач 1.3.37 пхп остался 5.2.1. По прежнему апач нагребает свыше 200мб оперативы. Может имеет смысл перейти на 4.4.5?(У кого есть библиотека на mysql кинте ссылку плз)
 

Gorynych

Посетитель PHP-Клуба
hermit_refined могу и пример привести, но мне казалось что лично Вы и так можете это представить (вроде у Вас вполне хорошо с объектами).

вот представьте: класс А одиночка. Его конструктор вызывает статический метод класса Б, который запрашивает через публичный статический метод класса А какое-то значение, определяемое в конструкторе класса А.

по сути - классическое использование до инициализации, но может не детектироваться и приводить к отъеданию памяти.
 

AnToXa

prodigy-одаренный ребенок
меня терзают смутные сомненья, что у вас там просто зацикливается что-то.
например реврайт, может быть и пхп.
в общем больше данных дайте, что у вас там крутится, какие задачи делаются и когда конкретнее начинаются проблемы.

-~{}~ 13.03.07 02:47:

по сути - классическое использование до инициализации, но может не детектироваться и приводить к отъеданию памяти.
memory limit это отрубит в любом случае, у человека явно не 300 мегов он.
 

firstborn

Новичок
Вчера тестировали, при запуске апач занимает 11мб. После этого загружаем сайт и начинаем по нему лазить, с частым обновлением страниц т.е созданием вида работы. После каждого обновления занимаемая апачем память растет приблизительно на 0.8Мб. При чем с новым обновлением той же страницы все повторяется. Таким образом мы добились того что апач занимал 150мб.

memory_limit=8M
 

hermit_refined

Отшельник
по сути - классическое использование до инициализации, но может не детектироваться и приводить к отъеданию памяти.
дык, это не до инициализации, а после.
с точки зрения internals - конструктор есть обычный метод, который вызывается непосредственно после (!) создания объекта.
и описанная вами ситуация ничем не отличается от простого обращения к несуществующему свойству, и может приводить в худшем случае к ошибке в логике приложения, но никак не к проблемам с памятью.
 

firstborn

Новичок
Хватит демагогии, по сути не было предложено никакого варианта решения проблемы. К тому же тестировали на форуме vBulletin. Я не думаю что ошибок такого рода там много.
 

AnToXa

prodigy-одаренный ребенок
Хватит демагогии
следим за тоном, ага.

К тому же тестировали на форуме vBulletin.
вот это первое упоминание вообще о том, что за задачи крутятся на сервере, так что отсюда может хоть какое-то осмысленое обсуждение начаться только.

имхо стоит попробовать повыключать все кроме пхп.
что там еще кроме vbulletin ? и какие модули еще кроме пхп.
а mysql там же? а там какие настройки стоят?
 

hermit_refined

Отшельник
по сути не было предложено никакого варианта решения проблемы
во-первых, не так уж и много людей используют wix xp в качестве сервера.
во-вторых, данных от вас не то что недостаточно, а практически вообще нет. "как только начинают шариться сразу кушать начинает" - это не описание проблемы. в отличие от скрипта из десяти строчек, при многократном выполнении которого происходит утечка памяти (если она не происходит, кстати, при обновлениях статических страниц - тогда php вообще не при делах).

если же вы просто ждете телепатов - ваше право, но и нам поговорить не мешайте ;-)
 

hermit_refined

Отшельник
Gorynych
простите, но я не вижу связи между ошибкой в логах и той ситуацией, которую вы описали.
вы предлагаете поверить вам на слово.
я же - по соображениям, изложенным выше - считаю, что вы ошибочно установили причинно-следственную связь там, где её быть не может.
 

Gorynych

Посетитель PHP-Клуба
hermit_refined причинно-следственную связь я установил очень простым и надежным образом - локализацией ошибочного блока кода и его исправлением.

и вот что меня особенно умиляет в вашей стойкой позиции - это неукротимое желание поспорить со мной по поводу описанной мной ситуации, с которой я имел возможность столкнуться, а Вы - нет. Т.е. практически априори Вы убеждены в своей правоте, и моей неспособности разобраться в причинно-следственных связях.

плакалЪ
 

hermit_refined

Отшельник
Gorynych
зря вы накаляете атмосферу.
кто-то же потом будет это повторять со ссылкой или без ссылки на вас.
и я всего лишь пытаюсь препятствовать распространению мифов, подобных вашему.

плакать или нет - ваше личное дело, но привести код, подтверждающий ваши слова - было бы разумно, не так ли?..
а по поводу моей уверенности... когда я не уверен, я не спорю.
 

firstborn

Новичок
Во первых Xp стоит не от большого ума. А от невозможности использования других операционок, в следствии некоторых причин в суть которых я не хочу ударяться.

По сути на машине(P4 4GHz(overclock); 1GB DDR2; 600GB SATAII HDD) стоит:
SAM Broadcaster(+ IceCast)
Ptoxa DCHub Server
MySQL 4.2
Apache 1.3.37 (+PHP 5.2.2)

Установлен сайт и форум пока что стоит блок на зарубеж тоесть доступен только в UA-IX.

Что было замечено: при обновлении страниц форума (vB 3.6.4), происходит увеличение используемой Apache'м оперативной памяти.

При чем было замечено что на c PHP 4.4.4 такой проблемы не было(но он не поддерживает хеш паролей MySQL 4+, или я просто не могу его заставить это сделать)
 
Сверху