Fedora資料一覧

LDAPサーバへの問い合わせをキャッシュする(nscd)

2008/4/24更新

対応バージョン: 8

nscd(name service cache daemon)を使用することで最初の情報取得時のみLDAPサーバから検索を行い、以降はキャッシュされた値を使用して問い合わせのパフォーマンスを向上させることができる。

nscd設定

nscdの設定ファイルは/etc/nscd.confである。

基本的にデフォルトのままでよいが、必要に応じて適宜設定を変更する。

nscd有効化

# chkconfig --level 3 nscd on
# chkconfig --list nscd
nscd            0:off   1:off   2:off   3:on    4:off   5:off   6:off

nscd起動

# service nscd start

nscd効果測定

ある環境でnscdの有効/無効によってユーザ情報の検索にどの程度差が生まれるか調査した結果を記す。

調査には以下のようなスクリプト(test.sh)を用いた。

#!/bin/sh

cnt=1000

while [ $cnt -gt 0 ]; do
  id ldapuser > /dev/null
  cnt=`expr $cnt - 1`
done

nscd無効

% time ./test.sh

real    0m14.686s
user    0m1.743s
sys     0m2.518s

1000回のリクエストに15秒弱かかっている。

nscd有効

% time ./test.sh

real    0m1.676s
user    0m0.441s
sys     0m1.107s

nscdを有効にすると同じ1000回のリクエストが2秒弱で終了することが分かる。