Greatly improved cache update times for conditions data with Frontier/Squid

Greatly improved cache update times for conditions data with Frontier/Squid
复制标题

使用 Frontier/Squid 大大改进了条件数据的缓存更新时间

DOI:
10.1088/1742-6596/219/7/072034
复制
发表时间:
2009
期刊:
Journal of Physics: Conference Series
影响因子:
--
通讯作者:
L. Lueking
L. Lueking
中科院分区:
--
文献类型:
--
作者:
D. Dykstra;L. Lueking

文献摘要

被引文献

相似文献

CMS探测器项目通过使用一个名为Frontier的软件子系统将条件数据的副本加载到全球超过10万个计算机核心。该子系统将数据库查询转换为HTTP,在CERN的中央数据库中查找结果,并将结果缓存在称为Squid的行业标准HTTP代理/缓存服务器中。任何缓存系统最具挑战性的方面之一是一致性,即确保对底层数据所做的更改及时传播到所有客户端。最近,Frontier系统得到了增强,大大减少了将更改传播到各处的时间,而不会使服务器负载过重。对于某些类型的数据,传播时间现在低至15分钟,而对于其余数据,传播时间不超过60分钟。这是通过利用HTTP和Squid的If-Modified-Since特性来实现的。为了使用此功能,Frontier服务器发送Last-Modified时间戳,但由于Oracle数据库通常不跟踪修改时间,因此开发了PL/SQL程序来跟踪数据库表的修改时间。我们讨论这个缓存方案的细节和克服的障碍,包括数据库和鱿鱼错误。
The CMS detector project loads copies of conditions data to over 100,000 computer cores worldwide by using a software subsystem called Frontier. This subsystem translates database queries into HTTP, looks up the results in a central database at CERN, and caches the results in an industry-standard HTTP proxy/caching server called Squid. One of the most challenging aspects of any cache system is coherency, that is, ensuring that changes made to the underlying data get propagated out to all clients in a timely manner. Recently, the Frontier system was enhanced to drastically reduce the time for changes to be propagated everywhere without heavily loading servers. The propagation time is now as low as 15 minutes for some kinds of data and no more than 60 minutes for the rest of the data. This was accomplished by taking advantage of an HTTP and Squid feature called If-Modified-Since. In order to use this feature, the Frontier server sends a Last-Modified timestamp, but since modification times are not normally tracked by Oracle databases, a PL/SQL program was developed to track the modification times of database tables. We discuss the details of this caching scheme and the obstacles overcome including database and Squid bugs.