共計 4756 個字符,預計需要花費 12 分鐘才能閱讀完成。
今天丸趣 TV 小編給大家分享一下 linux nscd 怎么開啟的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
linux nscd 是服務緩存守護進程,其英文全稱是“Name Service Cache Daemon”,它為 NIS 和 LDAP 等服務提供更快的驗證;緩存是一項非常重要的技術或機制,緩存的主旨就是提高客戶端訪問速度。
Linux 下開啟緩存服務 NSCD
NSCD(Name Service Cache Daemon)是服務緩存守護進程,它為 NIS 和 LDAP 等服務提供更快的驗證。不管是什么系統,緩存是一項非常重要的技術[或機制],緩存的主旨就是提高客戶端訪問速度。
NSCD 命令選項:
# nscd --help
Usage: nscd [OPTION...]
Name Service Cache Daemon.
-d, --debug Do not fork and display messages on the current
tty
-f, --config-file=NAME Read configuration data from NAME
-F, --foreground Do not fork, but otherwise behave like a daemon
-g, --statistics Print current configuration statistics
-i, --invalidate=TABLE Invalidate the specified cache
-K, --shutdown Shut the server down
-t, --nthreads=NUMBER Start NUMBER threads
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
NSCD 配置文件:
NSCD 配置文件為 /etc/nscd.conf,NSCD 程序在啟動的時候會讀取 /etc/nscd.conf 文件,每一行指定一個屬性和對應的值,或者指定一個服務和對應的值,# 表示注釋。有效的服務設定是:passwd,group,hosts,services,ornetgroup 五個。
NSCD 配置文件相關參數解釋:
# 設置日志文件 logfile debug-file-name
# 設置 debug 記錄的級別,默認是 0 debug-level value
# 程序啟動時,等待進去請求的處理線程數,至少 5 個 threads number
# 最大線程數,默認 32 max-threads number
#nscd 程序以哪個用戶運行, 如果設置了該選項,nscd 將作為該用戶運行,而不是作為 root。如果每個用戶都使用一個單獨的緩存(- S 參數),將忽略該選項。 server-user user
#哪個用戶可以請求統計用戶 stat-user user
# 在一個緩存項被刪除之前允許使用的次數,默認是 5 reload-count unlimited | number
# 是否啟用偏執模式,啟用會導致 nscd 周期性重啟,默認是 no paranoia yes|no
# 如果啟用偏執模式,設置的定期重啟 nscd 的時間間隔,默認是 3600 秒 restart-interval time
# 開啟或者關閉服務緩存,默認是 no enable-cache service yes|no
# 為成功請求的元素設置緩存 TTL,單位是秒,值越大緩存命中率越高,降低平均響應時間,但會增加緩存的一致性問題 positive-time-to-live service value
# 為失敗查詢元素設置緩存 TTL,單位是秒,應保持小值,減小緩存一致性問題 negative-time-to-live service value
# 內部的散列表大小,value 應該保持一個素數以達到優化效果。默認值是 211 suggested-size service value
# 啟用或者禁用檢查文件是否屬于指定的服務,這些文件是 /etc/passwd、/etc/group、/etc/hosts、/etc/services、/etc/netgroup 等 check-files service yes|no
# 設置緩存在服務器重啟后,仍舊能提供緩存服務,在使用偏執模式時有用,默認是 no persistent service yes|no
# 為客戶端共享 nscd 數據庫在內存中做的映射,使客戶端可以直接搜索,而不用每次都查詢守護進行,默認是 no shared service yes|no
# 該數據庫的最大大小,單位是 bytes,默認是 33554432 max-db-size service bytes
# 此選項僅使用于 passwd 和 group 服務 auto-propagate service yes|no
使用 NSCD 對 DNS 進行緩存
DNS 在服務器上的作用:
在需要通過域名與外界進行數據交互的時候,dns 緩存就派上用場了, 它可以減少域名解析的時間, 提高效率。例如以下情況
使用爬蟲采集網絡上的頁面數據,
使用 auth3.0 協議從其他平臺(如微博或 QQ) 獲取用戶數據,
使用第三方支付接口,
使用短信通道下發短信等.
開啟 NSCD DNS 緩存服務的優點和缺點
優點:
本地緩存 NDS 解析信息,提高解析速度
DNS 服務器掛了也沒有問題,在緩存服務時間范圍內,解析依舊正常
缺點:
DNS 解析信息會滯后,如域名解析更改需要手動刷新緩存,NSCD 不適合做實時的切換的應用,目前對于依賴 DNS 切換的服務,建議不要開啟 DNS 緩存。DNS Cache 作為普通的 DNS 解析 Cache 那是沒問題的,如果你使用 RDS 云服務器,也不建議使用 DNS 緩存服務。
配置 DNS 緩存:
通過編輯 /etc/nscd.conf 文件,在其中增加如下一行可以開啟本地 DNS Cache
enable-cache hosts yes #這個服務除了 dns 緩存之外還可以緩存 passwd,group,servers
完整配置如下:
enable-cache passwd yes
positive-time-to-live passwd 600
negative-time-to-live passwd 20
suggested-size passwd 211
check-files passwd yes
persistent passwd yes
shared passwd yes
max-db-size passwd 33554432
auto-propagate passwd yes
enable-cache group yes
positive-time-to-live group 3600
negative-time-to-live group 60
suggested-size group 211
check-files group yes
persistent group yes
shared group yes
max-db-size group 33554432
auto-propagate group yes
enable-cache hosts yes
positive-time-to-live hosts 3600
negative-time-to-live hosts 20
suggested-size hosts 211
check-files hosts yes
persistent hosts yes
shared hosts yes
max-db-size hosts 33554432
enable-cache services yes
positive-time-to-live services 28800
negative-time-to-live services 20
suggested-size services 211
check-files services yes
persistent services yes
shared services yes
max-db-size services 33554432
enable-cache netgroup yes
positive-time-to-live netgroup 28800
negative-time-to-live netgroup 20
suggested-size netgroup 211
check-files netgroup yes
persistent netgroup yes
shared netgroup yes
max-db-size netgroup 33554432
NSCD 服務查看和清除
NSCD 緩存 DB 文件在 /var/db/nscd 下??梢酝ㄟ^ nscd - g 查看統計的信息:
# nscd -g
nscd configuration:
0 server debug level
50d 14h 33m 40s server runtime
5 current number of threads
32 maximum number of threads
0 number of times clients had to wait
no paranoia mode enabled
3600 restart internal
5 reload count
passwd cache:
yes cache is enabled
yes cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
544 used data pool size
600 seconds time to live for positive entries
20 seconds time to live for negative entries
280382 cache hits on positive entries
10047 cache hits on negative entries
3260 cache misses on positive entries
474 cache misses on negative entries
98% cache hit rate
6 current number of cached values
52 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/passwd for changes
清除指定類型緩存:
nscd -i passwd
nscd -i group
nscd -i hosts
以上就是“linux nscd 怎么開啟”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,丸趣 TV 小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注丸趣 TV 行業資訊頻道。