ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: поправки к "100-200 тысяч соединени й" для FreeBSD 7 ( i386 и amd64 )




On 02.06.2008, at 14:13, MZ wrote:

В вс, 01/06/2008 в 05:09 +0400, Alexey V. Karagodov пишет:
Keywords: freebsd tcp optimization tune speed socket mbuf sendfile sysctl From: Сысоев Игорь Владимирович <http:// www.sysoev.ru>
Date: Mon, 1 Oct 2007 14:31:37 +0000 (UTC)
Subject: FreeBSD для обслуживания 100-200 тысяч соединений


######## /usr/src/sys/i386/conf/CUSTOM


include GENERIC
сложно скопировать и почистить ? чем инклудить весь мусор


device pf
device pflog
device pfsync
device carp


options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_CDNR
options ALTQ_PRIQ
options ALTQ_NOPCC


#options QUOTA
options IPSEC
оригинально, [GIANT] поддержку квот выключили но ipsec оставляем, для
чего ?
да, для этих примеров надо было почистить файлики, согласен кстати, если IPSEC не использовать, ничего плохого не будет?
кроме потребления памяти



#options IPSEC_FILTERGIF
device crypto
device cryptodev


options DEVICE_POLLING
#options HZ=1000


#options SCHED_ULE


options KVA_PAGES=512


options VM_KMEM_SIZE=1073741824
options VM_KMEM_SIZE_MAX=1073741824


options PANIC_REBOOT_WAIT_TIME=60


ident CUSTOM




######## /boot/loader.conf
verbose_loading="YES"
loader_logo="beastie"
#ng_ether_load="YES"
#linux_load="YES"
accf_data_load="YES"
accf_http_load="YES"
а в ядро добабавить сразу нельзя ?
не всегда нужно. работает точно также
или нет?



net.inet.tcp.syncache.hashsize=1024
net.inet.tcp.syncache.bucketlimit=100
net.inet.tcp.tcbhashsize=4096
kern.ipc.nsfbufs=10240

тут
vm.kmem_size=1G
без options KVA_PAGES=512 на i386 будет паника
это я вроде включал в конфиг ядра i386


vm.kmem_size_max=1G


######## /etc/sysctl.conf
net.inet.tcp.blackhole=1
net.inet.udp.blackhole=1


kern.ipc.nmbclusters=262144
Зачем такой гемор, ограничения на полгига при ядерной памяти на гиг ?
Потом подымай если что..
Ставим kern.ipc.nmbclusters=0 в /boot/loader.conf и все работает.
что здесь означает 0 ?



kern.ipc.somaxconn=4096
kern.ipc.maxsockets=204800
kern.maxfiles=204800
kern.maxfilesperproc=200000
net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535
net.inet.ip.portrange.randomized=0
net.inet.tcp.recvspace=8192

net.inet.tcp.sendspace=16384
Зачем юзеру спешить что-то качать, пусть понаблюдает как картинки одна за одной возникают на странице. Особенно если он на другом континенте. Или сервер досят сразу после загрузки ? Впечатление что автор не нашел другого способа избежать паники от нехватки ядерной памяти.
приступ паранойи был, вот и уменьшил
сколько рекомендуете поставить? сенд - 256К или 512К ? страницы у нас в среднем такие


net.inet.tcp.maxtcptw=40960
net.inet.tcp.msl=30000
net.inet.tcp.syncookies=1
net.inet.tcp.nolocaltimewait=1
net.inet.tcp.fast_finwait2_recycle=1




######## после всех мытарств, работа системы весьма порадовала.
Для трафика до двухсот мегабит в принципе сойдут и такие настройки.
ваши рекомендации? пол гигабита, гигабит, 5, 10 гигабит


######## комменты только приветствуются.
######## огромное пожелание к Игорю включить сей опус с поправками и комментариями (кои лично меня ОЧЕНЬ интересуют) в документацию на
своём сайте.


######## данные конфиги являются результатом печального опыта. если не указывать vm.kmem_size_max, ядру нехватит памяти, для всей этой
красоты.
Ядру надо увеличивать память, не вопрос. Как и уменьшать её лишнее потребление. Но не банальным же уменьшением tcp-буфера.
если "почистить" GENERIC, то много памяти не выиграешь. по сравнению с тем гимором, который можно получить что там такого ужасного есть в GENERIC? debug_symbols ? лучше пусть будут


######## успехов




 




Copyright © Lexa Software, 1996-2009.