中文

谁在主导?——了解运行时配置如何影响软件中的变量与常量

软件工程 2025-04-01 v1 分布式、并行与集群计算 操作系统

摘要

运行时配置错误可导致软件性能下降甚至引发故障。开发人员通常在配置解析阶段进行常规检查,以防止无效参数值。然而,我们发现,即使通过了这些检查的有效值,在遇到复杂的运行时环境和工作负载时,也可能导致意外的严重后果。我们的研究揭示了其背后的原因:运行时配置参数的值在传播和使用时,可能与其他常量和变量发生交互,从而改变其对软件行为的原始影响。因此,在遇到复杂的运行时环境和工作负载时,参数值可能不再有效。这使得用户在软件启动前正确配置软件变得极其困难。本文提出了一种方法,系统性地研究了配置如何通过与常量和变量的交互(PCV Interaction)在运行时影响软件。参数值代表用户的意图,常量体现开发人员的知识,而变量通常由运行时环境和工作负载定义。这种交互本质上说明了不同角色如何共同决定软件行为。为此,我们研究了 10 大型软件系统中的 705 个配置参数,揭示了大量配置参数在解析后与常量/变量发生交互的事实。我们分析了交互模式及其对软件运行时行为的影响。进一步地,我们突出了 PCV 交互的风险,识别了特定交互模式背后的潜在问题。我们的发现揭示了 PCV 交互的“双刃剑”,为开发新的自动化技术提供了新见解,帮助用户合适地配置软件,同时帮助开发人员设计更好的配置。

关键词

引用

@article{arxiv.2503.23774,
  title  = {Who is in Charge here? Understanding How Runtime Configuration Affects Software along with Variables&Constants},
  author = {Chaopeng Luo and Yuanliang Zhang and Haochen He and Zhouyang Jia and Teng Wang and Shulin Zhou and Si Zheng and Shanshan Li},
  journal= {arXiv preprint arXiv:2503.23774},
  year   = {2025}
}