С нами с 23.05.09
Сообщения: 739
Рейтинг: 365
|
Добавлено: 24/03/10 в 23:34 |
подскажите чем можно ускорить выдачу контента на сервере и время отклика?
апач worker
keep alive включен
# worker MPM
# This is the default MPM if USE=threads
#
<IfModule mpm_worker_module>
StartServers 40
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxClients 1000
MaxRequestsPerChild 0
</IfModule>
NGINX
user nginx nginx;
worker_processes 256;
worker_rlimit_nofile 8192;
error_log /dev/null info;
events {
worker_connections 1024;
use epoll;
}
подскажите что еще подкрутить? что в sysctl обычно правят, что не по дефолту?
|
|
|
|
С нами с 23.05.09
Сообщения: 739
Рейтинг: 365
|
Добавлено: 24/03/10 в 23:35 |
LA сервера 0.5 в среднем
трафика 25 мбит
проц ксеон
6 гигов памяти
2 винта в рейде
|
|
|
|
С нами с 23.05.09
Сообщения: 739
Рейтинг: 365
|
Добавлено: 24/03/10 в 23:52 |
забыл добавить система Gentoo Linux 64 бит
интересуют больше параметры sysctl кто как тюнит?
|
|
|
|
С нами с 15.12.08
Сообщения: 221
Рейтинг: 347
|
Добавлено: 25/03/10 в 10:50 |
А сейчас какие то проблемы с отдачей?
И зачем столько воркеров? Штук 4 хватит нормально.
|
|
|
|
С нами с 19.11.04
Сообщения: 881
Рейтинг: 837
|
Добавлено: 25/03/10 в 19:47 |
Apache:
убрать треды
Код: |
<IfModule prefork.c>
StartServers 10
MinSpareServers 3
MaxSpareServers 3
ServerLimit 64
MaxClients 64
MaxRequestsPerChild 4096
</IfModule>
|
отключить keep-alive, он все равно не нужен, nginx проксирует по 1.0
nginx:
Код: |
worker_processes 2;
worker_connections 10240;
|
по настройкам генту не подскажу
|
|
|
|
С нами с 23.05.09
Сообщения: 739
Рейтинг: 365
|
Добавлено: 25/03/10 в 22:27 |
у меня nginx не проксирует
у меня Nginx на выдачу контента (тумбы) с поддоменов
а апач все остальное
а почему префорк и не воркер? чем он лучше? вроде многие на треды перешли
|
|
|
|
С нами с 13.03.10
Сообщения: 23
Рейтинг: 12
|
Добавлено: 29/03/10 в 20:39 |
Mike Fox писал: | Apache:
убрать треды
|
Не надо их убирать, на линуксе-то
El Nino писал: | а почему префорк и не воркер? чем он лучше? вроде многие на треды перешли |
Оставь воркер и никого не слушай.
|
|
|
|
С нами с 13.03.10
Сообщения: 23
Рейтинг: 12
|
Добавлено: 29/03/10 в 20:44 |
El Nino писал: | подскажите чем можно ускорить выдачу контента на сервере и время отклика? |
А жалобы есть? Если да, то как тестишь?
Какого рода контент?
|
|
|
|
С нами с 07.05.08
Сообщения: 43
Рейтинг: 86
|
Добавлено: 30/03/10 в 10:30 |
Для начала не мешало бы определиться что тормозит выдачу, apache или nginx...
ну и дальше от этого копать уже...
И желательно показать полный конфиг апача/nginx & make.conf
Включить mod_status в apache & stub_status в nginx, указать кол-во connection per second, объем трафа и тд.
|
|
|
|
С нами с 10.10.07
Сообщения: 339
Рейтинг: 404
|
Добавлено: 30/03/10 в 11:22 |
1. менять mpm_worker на mpm_prefork - бред
2. для mpm_worker надо грамотно подобрать параметры servers/threads_per_server - и нафик не надо ставит 40 серверов
3. по поводу нгинкса - его настраивал человек, явно не знающий значений(смысла) параметров, и 256 воркеров - это явный перебор, их там 2 максимум должно было быть.
вообще, нужна статистика от stub_status и status_module, иначе - гадание на чайной заварке получается.
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 30/03/10 в 11:29 |
Буфера и память TCP подтюнить, только с умом )) Читай доки ядра
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 87380 16777216
Мож беклоги понадобятся побольше
net.core.netdev_max_backlog=16384
net.ipv4.tcp_max_syn_backlog=4096
диапазон портов поширше сделать
net.ipv4.ip_local_port_range = 2000 61000
TIME_WAITы чуток порезать
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle=1
Вот эта хуйня ругается на массивных отдачах, если файрвол включен
net.ipv4.ip_conntrack_max=131072 (можно и побольше)
и выключи треды (собирается с USE=-threads), пых пых тоже без тредов собрать
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 30/03/10 в 11:31 |
Soft-Com писал: | 1. менять mpm_worker на mpm_prefork - бред |
Да не бред, тредовый апач под нагрузкой очень неадекватно грейсится, очень долго останавливается, иногда уходит в своп, если невнимательно параметры выставить. Пхп под ним иногда очень странно себя ведет.
Ну а так он шустрее конечно, но в умелых руках.
|
|
|
|
С нами с 10.10.07
Сообщения: 339
Рейтинг: 404
|
Добавлено: 30/03/10 в 11:34 |
Pentarh писал: | Да не бред, тредовый апач под нагрузкой очень неадекватно грейсится, очень долго останавливается, иногда уходит в своп, если невнимательно параметры выставить. Пхп под ним иногда очень странно себя ведет.
Ну а так он шустрее конечно, но в умелых руках. |
эта проблема скорее всего связана с использованием семафоров, она же и решается их очисткой.
а mpm_worker+fast-cgi отлично работает (если на virtual() не обращать внимание )
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 30/03/10 в 11:36 |
Ну скажу так, тредовый апач надо использовать когда ты точно знаешь что делаешь
|
|
|
|
XXX-Server.biz
С нами с 15.02.03
Сообщения: 9411
Рейтинг: 6676
|
Добавлено: 31/03/10 в 11:46 |
а зачем апач там вообще? пхп и к nginx можно привязать напрямую, и все замечательно будет )
|
|
|
|
С нами с 10.10.07
Сообщения: 339
Рейтинг: 404
|
Добавлено: 31/03/10 в 11:49 |
в этом случае отпадает возможность юзания хтаксеса, что многими кастомерами определяется как очевидная проблема.
|
|
|
|
XXX-Server.biz
С нами с 15.02.03
Сообщения: 9411
Рейтинг: 6676
|
Добавлено: 31/03/10 в 11:51 |
ну один раз прописать реврайты в конфиг nginx-а (тем более если скрипты одинаковые используются - сразу можно прописать для всех доменов глобально) - не такая и большая проблема ) зато апач уберется )
держать целый апач из-за пары реврайтов на домен все же не очень рационально ))
|
|
|
|