Начальная оптимизация php5-fpm

Posted in Новости on 29 января, 2016 by admin

Итак, имеем сервер 4 ядра , 8Gb RAM . На сервере стоит MySQL , php5-fpm, nginx.
Сначала рассчитываем, сколько мы можем выделить памяти для php5-fpm . Возьмем половину реальной — 4Gb.
Далее, узнаем, сколько памяти в среднем «ест» один процесс php5-fpm , в этом нам поможет конвеер отсюда
root@XXX:/# pidof php5-fpm | xargs pmap -d | grep '^mapped' | awk '{print $4}' | sed 's/K//' | perl -e 'do { $a+=$_; $b++ } for <>;print $a/1024, " mb\n", $a/1024/$b, " mb\n"'
197.484375 mb
24.685546875 mb

Округлим до 30Мб
Вводные : 4 ядра , 4Гб RAM , ~30Мб на процесс.

pm.max_children = Количество памяти под fpm / Память одного процесса
pm.min_spare_servers = Количество ядер * 2
pm.max_spare_servers = Количество ядер * 4
pm.start_servers = ( pm.min_spare_servers + pm.max_spare_servers) / 2

Итого :

pm.max_children = 136
pm.min_spare_servers = 8
pm.max_spare_servers = 16
pm.start_servers = 12

Tags: , , , ,

wptouch: wp super cache необходимо конфигурировать для корректной работы с wptouch

Posted in Новости on 29 января, 2016 by admin

Для работы кеша нужно подключить обработку мобильных тем в WP Super Cache в двух местах :

Настройки - WP Super Cache - ПЛагины - Активируем WPtouch
Настройки - WP Super Cache - Настройки - Ставим галку на "Mobile device support"

Кодирование заголовка письма

Posted in Новости on 29 января, 2016 by admin

При формировании заголовка писем не через клиента или неавтоматическими средствами требуется жестко указывать кодировку и тип кодирования заголовка :
encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
Переменная encoding принимает два состояния :
1. B — base64_encode
2. Q — imap_8bit
Примеры :

"Subject: =?UTF-8?B?".base64_encode($subject)."?="
"Subject: =?UTF-8?Q?".imap_8bit($subject)."?="

Tags: ,

Расшариваем интернет за NAT в Linux

Posted in Новости on 7 октября, 2015 by admin

1. Разрешаем форвардинг пакетов :

sysctl -w net.ipv4.ip_forward=1

2. Добавляем построут для пакетов :

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # eth0 - интерфейс интернета

Tags: , , ,

Создание виртуального адаптера для своей частной сети в KVM

Posted in Новости on 7 октября, 2015 by admin

1. Создаем файл xml c содержимым :

< network > < name >veth< /name > < bridge name="veth0" / > < /network >

2. Далее импортируем нашу сеть в конфигурацию :

virsh net-define /tmp/veth.xml

3. Проверяем новую сеть в списке :

virsh net-list --all


root@debian:/iso_images# virsh net-list --all
Name State Autostart Persistent
----------------------------------------------------------
default inactive no yes
veth active yes yes

4. Стартуем ее и включаем автостарт после перезагрузки :

net-start veth
net-autostart veth

Tags: , , ,