ГлавнаяРегистрацияВходВ закладки

Главная » Статьи » CentOS » Как настроить CentOS
Использование nscd на CentOS
Использование nscd на Debian
А так же использование nscd на CentOS / Debian

Имеем тормоза с DNS на сервере:

time wget -q -O/dev/null xx.com

real 0m16.113s
user 0m0.003s
sys 0m0.002s

time wget -q -O/dev/null xxx.com

real 0m16.215s
user 0m0.001s
sys 0m0.002s


Устанавливаем nscd, какой суперски может кэшировать требования к DNS

CentOS way

yum install -y nscd


Активизируем пуск при загрузке:
chkconfig nscd on


Бросим:
/etc/init.d/nscd start


Debian way

apt-get install -y nscd


Статистику работы nscd возможно разузнать командой:
nscd -g


Через совсем немного дней работы nscd на одном из наших хостинг-серверов было заработаны последующие смысла:


nscd -g
nscd configuration:

0 server debug level
4d 17h 21m 20s server runtime
восьмой current number of threads
тридцать два maximum number of threads
0 number of times clients had to wait
no paranoia mode enabled
3600 restart internal

passwd cache:

yes cache is enabled
yes cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
18296 used data pool size
600 seconds time to live for positive entries
двадцатый seconds time to live for negative entries
26303 cache hits on positive entries
0 cache hits on negative entries
18186 cache misses on positive entries
36 cache misses on negative entries
59% cache hit rate
190 current number of cached values
542 maximum number of cached values
7 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/passwd for changes

group cache:

yes cache is enabled
yes cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
17648 used data pool size
3600 seconds time to live for positive entries
шестьдесят seconds time to live for negative entries
3283 cache hits on positive entries
0 cache hits on negative entries
4439 cache misses on positive entries
67 cache misses on negative entries
42% cache hit rate
245 current number of cached values
268 maximum number of cached values
8 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/group for changes

hosts cache:

no cache is enabled
yes cache is persistent
yes cache is shared
0 suggested size
0 total data pool size
0 used data pool size
3600 seconds time to live for positive entries
20 seconds time to live for negative entries
0 cache hits on positive entries
0 cache hits on negative entries
0 cache misses on positive entries
0 cache misses on negative entries
0% cache hit rate
0 current number of cached values
0 maximum number of cached values
0 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/hosts for changes

services cache:

yes cache is enabled
yes cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
1432 used data pool size
28800 seconds time to live for positive entries
20 seconds time to live for negative entries
32 cache hits on positive entries
0 cache hits on negative entries
15 cache misses on positive entries
1876 cache misses on negative entries
1% cache hit rate
9 current number of cached values
26 maximum number of cached values
2 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/services for changes



А потребление памяти:
ps aux | grep nscd
root 5138 0.0 0.0 346312 1020 ? Ssl Apr24 0:38 /usr/sbin/nscd


Теперь же испытываем быстрота работы DNS:
time wget -q -O/dev/null xxx.com

real 0m27.112s
user 0m0.003s
sys 0m0.001s

time wget -q -O/dev/null xxx.com

real 0m0.107s
user 0m0.001s
sys 0m0.001s

time wget -q -O/dev/null xxx.com

real 0m0.106s
user 0m0.001s
sys 0m0.001s

time wget -q -O/dev/null xxx.com

real 0m0.105s
user 0m0.000s
sys 0m0.002s


Теперь если выключить nscd, неувязка возвратится:

time wget -q -O/dev/null xxx.com

real 0m22.109s
user 0m0.000s
sys 0m0.003s


Значительное примечание

nscd умеет кэшировать включая DNS требования, а также гуляю любых иных тяжких операций, исполняемых из libc, пример: getpwnam, getpwuid, getgrnam, getgrgid, gethostbyname (именно DNS).

Nscd provides caching for accesses of the passwd(5), group(5), and hosts(5)
databases through standard libc interfaces, such as getpwnam(3), getpwuid(3),
getgrnam(3), getgrgid(3), gethostbyname(3), and others.


При всем этом, не стоит опасаться ошибок кэширования, поскольку он весьма неглупый:
The daemon will try to watch for changes in configuration files appropriate
for each database (e.g. /etc/passwd for the passwd database or /etc/hosts and
/etc/resolv.conf for the hosts database), and flush the cache when these are
changed.


http://kernel.org/doc/man-pages/online/pages/man8/nscd.8.html
Просмотров: 3387
Дата: 2011-08-03 23:57:16
Комментариев: 0
Источник: