Published on InterSystems Developer Community (https://community.intersystems.com)

主页 > Linux TZ环境变量未被设置以及对Caché的影响

文章
Michael Lei · 三月 12, 2022 阅读大约需 1 分钟

Linux TZ环境变量未被设置以及对Caché的影响

在最近的大规模基准测试活动中,我们看到过多的%sys CPU时间,对应用程序的扩展产生了负面影响。

问题

我们发现,由于TZ环境变量没有被设置,很多时间都花在了localtime()系统调用上。 我们创建了一个简单的测试程序来证实这一观察结果,设置了TZ与未设置TZ的时间差和所需的CPU资源都是惊人的。 我们发现,当TZ没有设置时,从localtime()继承使用stat()系统调用到/etc/local_time是成本很高。

建议

InterSystems强烈建议在任何Linux安装中,无论是x86还是Linux on Power,都要确认TZ环境变量的设置是否适当,以获得最佳性能。  更多详情请见。"man tzset"。

目前的Caché 2016.1现场测试包含了对日期和时间功能的优化,初步测试表明有很大的改进。  下面是测试新的内部函数调用的样本输出,在这两种情况下,在Power上的Linux都没有设置TZ。

在Caché 2016.1 FT之前:

real	0m22.60s
user	0m1.64s
sys	0m20.89s

带有Caché 2016.1 FT:

real	0m0.40s
user	0m0.37s
sys	0m0.00s

请在评论区说明你的应用程序在TZ环境变量方面的任何经验,以及Caché 2016.1现场测试在设置或不设置TZ时的影响。谢谢!

#InterSystems 业务解决方案和架构 #系统管理 #Caché

源 URL:https://cn.community.intersystems.com/post/linux-tz%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E6%9C%AA%E8%A2%AB%E8%AE%BE%E7%BD%AE%E4%BB%A5%E5%8F%8A%E5%AF%B9cach%C3%A9%E7%9A%84%E5%BD%B1%E5%93%8D