Reducing Tail Latencies Through Environment- and Neighbour-aware Thread Management

2024年07月16日
  • 简介
    应用程序的尾延迟是许多服务的关键指标,高延迟直接与收入损失相关。现代深度嵌套的微服务架构加剧了尾延迟的问题,增加了用户遇到这种问题的可能性。在这项工作中,我们展示了当应用程序在重负载下运行时,操作系统线程的CPU过度承诺会导致高尾延迟。 CPU过度承诺可能来自两个操作因素:在CPU配额下错误地确定可用的CPU数量,以及忽略邻居应用程序及其CPU使用情况。我们讨论了不同语言获取可用CPU的解决方案,评估了影响,并讨论了更统一的语言无关接口获取可用CPU数量的机会。然后,我们评估了邻居使用对尾延迟的影响,并介绍了一种新的邻居感知线程池,即友好线程池,它动态避免了过度承诺。在我们的评估中,友好线程池将最大工作延迟降低了高达$6.7\times$,但会以高达$1.4\times$的吞吐量降低的代价。
  • 作者讲解
  • 图表
  • 解决问题
    解决高尾延迟问题,提高服务质量和收益。针对现代深度嵌套的微服务架构,探讨CPU超额提交对高尾延迟的影响。
  • 关键思路
    通过友好线程池动态避免CPU超额提交,降低最大工作延迟,提高吞吐量。
  • 其它亮点
    论文探讨了不同语言获取可用CPU数量的解决方案,并提出了一种更统一的语言无关接口。同时,引入了友好线程池的概念,实现了动态避免CPU超额提交,降低了最大工作延迟,但也会带来一定的吞吐量损失。实验结果表明友好线程池可以将最大工作延迟降低6.7倍。
  • 相关研究
    近期相关研究包括:1. "Understanding and Mitigating Packet Processing Tail Latency";2. "The Tail at Scale";3. "The Tail at Scale in Cloud Storage Systems"。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问