【问题标题】:BIND9.7. When several named processes are running, how to judge which process is providing the service?绑定9.7。当有多个命名进程在运行时,如何判断是哪个进程在提供服务?
【发布时间】:2013-01-25 13:12:35
【问题描述】:

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

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

提供服务的指定进程与其他进程有什么区别?能给我详细的解释吗?

非常感谢~

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

【问题讨论】:

    标签: process bind named proc


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

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

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

      外部来源:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-04
        • 2012-07-31
        • 2021-10-15
        • 1970-01-01
        • 2017-06-22
        • 1970-01-01
        相关资源
        最近更新 更多