[RC-LAB] Оптимизация ПО
Первой статьей в рубрике RC-LAB будет рассказ об оптимизации PHP и Apache для вебсервера.
Мы будем собирать наш веб-сервер на рабочем сервере, где и будут запускаться скрипты. Обратите внимание, что основной акцент будет установлен на оптимизации при компиляции, по этому файлы конфигурации берите со статьи по установке веб-сервера.
Смотрим свой процессор cat /proc/cpuinfo (для тестовых целей взята была слабенькая, но реальная машинка).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 4 model name : Intel(R) Celeron(R) CPU 2.80GHz stepping : 9 cpu MHz : 2800.453 cache size : 256 KB fpu : yes fpu_exception : yes cpuid level : 5 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc up pni monitor ds_cpl tm2 cid cx16 xtpr lahf_lm bogomips : 5600.90 clflush size : 64 cache_alignment : 128 address sizes : 36 bits physical, 48 bits virtual power management: |
И исходя из параметров mmx, sse и sse2 устанавливаем значение к переменной CFLAGS, список соотношения флаг/параметр можно просмотреть
1 | export CFLAGS="-O3 -msse -mmmx -march=nocona -funroll-loops -mfpmath=sse,387" |
конфигурируем PHP с параметром –disable-all, и добавляем только необходимые опции (например –enable-ssl).
При конфигурации апача отключаем ненужные нам модули (список для каждого сервере может быть разным, а может – пустым):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | --disable-authn-file --disable-authn-default --disable-authz-host --disable-authz-groupfile --disable-authz-user --disable-authz-default --disable-auth-basic --disable-include --disable-filter --disable-charset-lite --disable-log-config --disable-env --disable-setenvif --disable-version --disable-mime --disable-status --disable-autoindex --disable-asis --disable-cgid --disable-cgi --disable-negotiation --disable-dir --disable-actions --disable-userdir --disable-alias |
Если Вы – разработчик, то советую добавить опцию –enable-debug для PHP и –enable-maintainer-mode для Apache. Это не повлияет на производительность программ, но немного увеличит объем самого бинарника.
И только после этого делаем make install clean.
На этом все, но тесты продолжаются и я буду дополнять данную рубрику интересными наработками.
Ви маєте увійти, щоб оприлюднити коментар.