Страница 1 из 2

[ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 17:11:09
hizel
есть в php встроенные средства профилирования?
есть какшка работающая, но жрет миного сладкой опреативы
надо бы от оптимизировать, а то распухло шире vps-ки :(

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 17:55:19
ProFTP
в каком режиме пхп? включи кэширование memcache fast

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 17:58:54
hizel
помоиму там нет memcache

Код: Выделить всё

ii  apache                 1.3.34-4.1+etch1                     versatile, high-performance HTTP server
ii  apache-common          1.3.34-4.1+etch1                     support files for all Apache webservers
ii  apache2-utils          2.2.3-4+etch6                        utility programs for webservers
ii  libapache-mod-php4     4.4.4-8+etch6                        server-side, HTML-embedded scripting languag
ii  php4-common            4.4.4-8+etch6                        Common files for packages built from the php
ii  php4-curl              4.4.4-8+etch6                        CURL module for php4
ii  php4-gd                4.4.4-8+etch6                        GD module for php4
ii  php4-memcache          2.0.1-1.1                            memcache extension module for PHP4
ii  php4-mhash             4.4.4-8+etch6                        MHASH module for php4
ii  php4-mysql             4.4.4-8+etch6                        MySQL module for php4
mod_php я так понимаю

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 18:00:30
ProFTP
ты админ? поставь...

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 18:23:37
zg
hizel писал(а):есть в php встроенные средства профилирования?
по-моему нет
hizel писал(а):есть какшка работающая, но жрет миного сладкой опреативы
смотря чем жрёт, если массивами, то надо переводить на объекты или передавать по ссылкам
hizel писал(а):надо бы от оптимизировать, а то распухло шире vps-ки :(
скорее всего без оптимизации скрипта не получится

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 18:31:07
hizel
memcache будет же хавать еще больше сладкой оперативы?

там джумала помоиму, не из последних
ковыряцо в этой могучей кучке довольно затруднительно %:(
интересено если перставить под lighttpd и fastcgi php будет
кукшать меньше?

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 18:41:47
ProFTP
hizel писал(а):memcache будет же хавать еще больше сладкой оперативы?

там джумала помоиму, не из последних
ковыряцо в этой могучей кучке довольно затруднительно %:(
интересено если перставить под lighttpd и fastcgi php будет
кукшать меньше?
жомла она оптимизирована

попробуй акселератор еще, но если mod_perl, говорят что акселератор не нужен

memcache использует шаремемори, он более "мягче" будет работать, участки кода будет кэширвоать на диск и памяти будет меньше жрать... правда тебе код надо будет переписывать по-моиму
hizel писал(а): fastcgi php
врядли... еще больше будет памяти жрать, но процессор чуть меньше...

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 18:49:20
zg
hizel писал(а):интересено если перставить под lighttpd и fastcgi php будет
кукшать меньше?
гм... не совсем целевая статья, но всёже http://dklab.ru/chicken/nablas/49.html
на тяжёлые проекты (типа битрикса) ставят обычно еакселератор, нгникс и лайтхттп.
hizel писал(а):там джумала помоиму, не из последних
если писалось для пхп4 и не использовались объекты, дело дрянь. Если пхп5 работает в режиме совместимости с пхп4, то тоже плохо, надо вырубить zend.ze1_compatibility_mode.

Кстати второй зендинженер по моим субъективным оценкам быстрее чем первый, поэтому если стоит пхп4, то лучше поставить пхп5. Ну и сам пхп жрёт мало памяти, жрёт в основном апач. Единственное, что str_replace может жрать немеренно памяти, для неё и 128мегабайт скушать не проблема.

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 20:16:12
hizel
гм, посмотрим,
да и php4 выше пейсал %(

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 22:38:53
hizel
http://www.xdebug.org/
а это щито за кю? :pardon:

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 22:59:16
ProFTP
а сколько хостов на сайте и хитов?

если памяти у тебя нету, то память ни откуда не возмется...

эта оптимизация на 1 микросекунду :drinks: :bn:

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 23:06:32
hizel
это vps, но пардон за обычный cms-ный сцайт слишком жирно
кстати а как енти волшебные хосты\хинты считать? :)

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-11 23:10:00
ProFTP
статистика к веб сереру... сколько хостив в день подключалось и сколько раз... кнопка javascript есть нужны реальные люди с браузерами

и логи посмотри, лучше в mysql записывай

может тебя кто-то досит...

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-12 6:45:57
zg
hizel писал(а):http://www.xdebug.org/
а это щито за кю? :pardon:
в пхп4 в виду особенностей ze1 при каждом вызове функций и предаче ей аргументов, они как правило копируются в новое адресное пространство. При работе с объектами и большими текстовыми блоками (порядка нескольких сот килобайт) это может нехило скушать оперативы, но есть одно существенное но - у пхп стоит встроенный лимит памяти, сколько он может кушать в один процесс. На средних хостингах это 16-32 мегабайта, на продвинутых 64-128, на самых хилых 8 мегабайт. При этом у меня есть проект, у которого пять сотен разделов, которые грузятся и обрабатываются на каждую генерацию страницы и пиковое потребление рамы не превышает двух метров. Проект работает на пхп5 на объектах.

Я рекомендую поиграться с лимитом памяти в php.ini и проверить минимальное значение для работы движка.

Никакие оптимизаторы не исправят кривизну рук авторов движка. Просто есть вариант, что всё-таки грузит не пхп.

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-12 12:49:17
hizel
только загруженный

Код: Выделить всё

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 6132 www-data  21   0 16516 2084  480 S    0  0.2   0:00.00 apache
 6133 www-data  22   0 16516 2084  480 S    0  0.2   0:00.00 apache
после пяти минут работы

Код: Выделить всё

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 6132 www-data  15   0 31528  16m 2864 S    0  1.7   0:00.60 apache
 6133 www-data  15   0 30872  16m 2872 S    0  1.6   0:00.30 apache
 6134 www-data  15   0 31528  16m 2864 S    0  1.7   0:00.59 apache
 6135 www-data  15   0 30864  16m 2892 S    0  1.6   0:00.32 apache
кушаем сладкое

Код: Выделить всё

Tasks:  32 total,   1 running,  31 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.6%us,  0.4%sy,  0.0%ni, 88.1%id,  8.8%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1024000k total,   500804k used,   523196k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

Код: Выделить всё

# grep mem /etc/php4/apache/php.ini
memory_limit = 24M      ; Maximum amount of memory a script may consume (8MB)
report_memleaks = On
;extension=memcache.so
[memcache]
memcache.dbpath=/var/lib/memcache
memcache.maxreclevel=0
memcache.maxfiles=200
memcache.archivememlim=0
memcache.maxfilesize=512M
memcache.maxratio=2
при меньшем memory_limit часть могучей кучки не работает
интересно куда она memleaks логирует

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-12 18:44:41
zg
hizel писал(а):интересно куда она memleaks логирует
если верить мануалу, то генерит варнинг
hizel писал(а):при меньшем memory_limit часть могучей кучки не работает
24 метра много честно говоря.... видимо там активно используется global и большие текстовые массивы.

Переход на FastCGI + лайтхттп + пхп5 должен существенно ускорить и оптимизировать работу движка. Хотя, конечно не факт, надо тестить.

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 11:44:29
hizel
хе хе, тяжело машинке, доходило до 30

Код: Выделить всё

top - 11:35:14 up 194 days, 21:02,  5 users,  load average: 3.63, 14.38, 18.84

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 12:14:43
ADRE
товарисч а что не поставить куширование на джумлу.... и все, посмотри, что тянется из базы, обычно неочишенные запросы и переменные серут в оперативу, а оптимизация, с помощью конкретных плагинов и прочего - дает нагрузку на проц, так что всего 2 выхода, поставить оперативу или оптимизировать движок ))), если человек против, возьми и сам вкрути через ob_start() и все )) нужно то 1 вызов в начале и конце скрипта, или еще был модуль для кеширования прям из апача без дополнительной мишуры

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:01:36
hizel
тут исчо гиморой, это сцайт одной газетке, и у них нидавно вышла противоадминистрации стотья, а серваг мертвенький :(
и второй оспект, это уже третий подобный случай с этим сцайтом, поздно пить боржоме
вонь уже поднялась :)
*лихорадочно фаерволит попу*

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:06:34
zg
гм... я не работал никогда с еакселератором, но битрикс на нём показывал просто чудеса (правда по данным самого битрикса)...

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:16:22
hizel
уже боец сбегал 4Гб оперативы сделал, линупс 32битный, 3.2 Гб имеем в наличии
теперь репу чешу как мне обновить дебиан налету до amd64 и не потерять ядро openvz-ешное заодно %:(

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:28:04
hizel
ыыы, :-o

Код: Выделить всё

>ls mambots/content/dynamicImage/cache/ | wc -l
149543

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:43:35
zg
нехило....
hizel писал(а):dynamicImage
понятно куда рама идёт - тут никакой оптимизатор не поможет

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 13:58:08
hizel
последнее время он wait сидел, я грешил на полгига свопе :)

Re: [ПоХаПэ] оптимизация потребления памяти

Добавлено: 2009-02-13 14:14:53
zg
кэш видимо не умеет самопроизвольно очищаться, там поди файлы ещё за диколохматый год