0

例如,我多次执行“ sudo named ”,因此有几个命名进程在运行。当我使用“ pidof named ”时,我得到了几个 pid。

我想计算BIND进程的CPU使用率,所以我需要从“ /proc/pid/stat ”中获取一些参数,所以我需要真正提供域解析服务的命名进程的pid 。

提供服务的命名进程与其他进程有什么区别?你能给我一个详细的解释吗?

非常感谢~

(我是第一次用stackoverflow,用英文问问题,语法错误请忽略。)

4

2 回答 2

0

应该只有一个名为 running,管理服务的脚本确保这一点。你不应该那样启动它,你应该使用你的发行版来启动它,可能类似于service bind start(可能是 RedHat 主义)或/etc/rc.d/bind start(对于沼泽标准 SysVinit)。

我在这里负责 DNS 很长一段时间。一些技巧:

  • DNS 是一项非常关键的服务,请格外小心地配置和监控。请阅读有关设置和管理的内容,在您完全清楚之前不要继续。
  • 找人作为你不在的情况下的备份,并确保他们理解前一点。
  • DNS 不是 CPU 密集型的(好吧,有签名域和可能已经改变的新奇东西),它是内存密集型的(和网络密集型的,或者至少对延迟敏感)。我们的主 DNS 服务器一次运行了几个月,在 IIRC 的那种时间段内占用了大约半小时的 CPU 时间。
  • 将您的主服务器(负责域)与客户端查询的服务器(缓存服务器)分开。存在格式错误的问题或未询问的问题的“答案”污染数据库的漏洞
  • 主服务器将在 RAM 中拥有所有域信息,请确保您有足够的信息
  • 确保您管辖范围内的所有机器都使用相同的缓存服务器。不止一个是没有意义的,这破坏了缓存的想法。
  • 随着时间的推移,缓存服务器会收集大量数据。此数据很少对性能至关重要,因此为它们配置大量交换空间以适应溢出。
于 2013-01-25T13:32:46.843 回答
0

绑定与您拥有的 CPU 一样多的命名进程:

man named: -n #cpus 创建 #cpus 工作线程以利用多个 CPU。如果未指定,named 将尝试确定存在的 CPU 数量并为每个 CPU 创建一个线程。如果无法确定 CPU 的数量,将创建单个工作线程。

外部源:

https://unix.stackexchange.com/questions/140986/multiple-named-processes-for-bind9-in-debian

于 2017-07-27T08:23:12.110 回答