NginX GeoIP 导致额外负载?

NginX GeoIP 导致额外负载?

由于 Nginx 需要geoip_指令进入 nginx.conf 文件的主 http{ } 块,这是否意味着每个请求都会提取 geoip 数据?

换句话说,NginX 是否会查找所有传入请求的 geoip 数据,即使对于那些不需要数据的请求也是如此?

答案1

一旦配置文件完成,Nginx 仅在(重新)启动或 SIGHUP 时解析并将 geoip 数据加载到内存中。

如何扩展 $geoip_* 变量 - 我不确定,但希望它们只在需要时计算(在“if”或“log”或“map”或任何构造中)。无论如何,它不会在每次请求时重新读取并重新加载整个数据文件。

答案2

GeoIP 查找来自分布式数据库而不是动态服务器,因此与 DNS 不同,最坏情况下的性能损失很小。

相关内容