本文档介绍如何降低单个 ECS 实例的 DNS 查询请求频率。
火山引擎私网解析(PrivateZone)会限制来自同一个 ECS 实例的 DNS 查询请求的频率。如果一个 ECS 实例的 DNS 查询请求频率超过 5000 次/秒,私网解析 PrivateZone 会对该 ECS 实例的 DNS 查询请求进行限速。被限速后,私网域名解析的可用性将无法被保证。参见 功能版本规格。
为了降低单个 ECS 实例的 DNS 查询请求频率,您可以增加 ECS 实例的数量或在 ECS 实例中缓存解析记录。例如,您可以通过 nscd 服务在 ECS 实例中缓存解析记录。
您可以增加 ECS 实例的数量,把 DNS 查询请求分摊到其他 ECS 实例,从而降低单个 ECS 实例的 DNS 查询请求频率。
您可以在 ECS 实例中使用 nscd(Name Service Cache Daemon)服务,通过缓存解析记录的方式降低 DNS 请求频率。参见 Ubuntu Manuals 了解 nscd 的更多信息。
说明
使用 nscd 服务后,如果解析记录发生了变更,只有在 ECS 实例的缓存失效后,新的解析记录才会对 ECS 实例生效。
参见 ECS 实例所使用的具体 Linux 发行版的官方文档了解如何安装 nscd。
以 Ubuntu 为例,您可以运行以下命令安装 nscd:
sudo apt install nscd
以 Ubuntu 为例,您可以运行以下命令马上启用 nscd:
sudo systemctl start nscd
您可以运行以下命令在开机时自动启用 nscd:
sudo systemctl enable nscd
以 Ubuntu 为例,nscd 的配置文件位于 /etc/nscd.conf
目录。您可以使用文本编辑器编辑nscd.conf
文件。参见 Ubuntu Manuals 了解如何配置该文件。
sudo vim /etc/nscd.conf
以 Ubuntu 为例,您可以运行以下命令验证 nscd 的服务状态:
sudo systemctl status nscd
您可以运行以下命令查看 nscd 的缓存统计数据:
nscd --statistics