您好,
我们有一个Perl脚本,用于处理主要网站的头端服务器发送的地理位置请求。该脚本是一个代理,提供了额外的业务逻辑,解释由提供给定IP地址数据的COTS产品返回的数据,例如国家、连接类型、路由类型、运营商等。
这个Geo服务目前正在处理COTS后端每秒约1,000个请求的高峰负载。顺便说一下,它实际上从专用的负载平衡/缓存层中直接提供5,000个请求每秒。
最近我不得不修改这个代理的行为,以允许新类别的连接发生在网站上,这引起了一些问题。
脚本的原始版本不是我的设计!顺便说一句,在同行评审我的更改时,他们很正确地指出,我们应该将所有配置项迁移到单独的配置文件中,而不是继续使用混合嵌入和单独的配置项。
现在我想进一步,将所有作为单独Perl哈希创建的配置项放入单个配置文件中。
目前,我们必须停止并重新启动整个应用程序才能重新加载新的配置项,考虑到流量水平,这有点不方便,尽管代理层在两个不同的数据中心中有四个实例,所以我们从未真正失去服务。
我怀疑我将不得不使用计时器或请求计数器,并对相关的配置文件执行stat操作。或者甚至为配置文件配置一个TTL,每十分钟重新加载它一次。
但是是否有一种方法可以使Perl自动重新加载它先前加载过的文件的更新版本?我想到了类似于Apache mod_perl模块提供的行为。
谢谢!