Marauder: synergized caching and prefetching for low-risk mobile app acceleration

Marauder: synergized caching and prefetching for low-risk mobile app acceleration
复制标题

DOI:
10.1145/3458864.3466866
复制
发表时间:
2021-06
期刊:
Proceedings of the 19th Annual International Conference on Mobile Systems, Applications, and Services
影响因子:
--
通讯作者:
M. Ramanujam;H. Madhyastha;R. Netravali
M. Ramanujam;H. Madhyastha;R. Netravali
中科院分区:
其他
文献类型:
--
作者:
M. Ramanujam;H. Madhyastha;R. Netravali

文献摘要

相似文献

较低的交互作用响应时间对于移动应用为用户提供的经验至关重要。不幸的是,现有的策略缓解了网络潜伏期,阻碍应用程序响应率在实践中缺乏。特别是,在设定资源内容变化时匹配的到期时间时,缓存会困扰着挑战,同时预先取决于对证明难以捉摸的用户行为的准确预测。我们介绍了Marauder,该系统协同缓存和预摘要协同,以改善每种技术所获得的加速度,同时避免其固有的局限性。掠夺者的关键是我们的观察结果,即像网页一样,应用程序通过下载和解析结构化的文本资源来处理交互,这些文本资源完全列出(即无需咨询应用程序二进制文件)来加载其他资源。在此基础上,Marauder直接从应用程序的缓存中引入了两个低风险的优化。首先,在缓存的文本文件的指导下,在已经触发的交互过程中,Marauder预取的参考资源。其次,为了提高缓存内容的疗效,掠夺者明智地预购了即将到来的资源,延长了缓存生活以进行不变的资源,并下载了轻巧(但至关重要的)文本文件的更新。在广泛的应用程序,实时网络,交互轨迹和电话中,掠夺者将中位数和90%的交互作用响应时间降低了27.4%和43.5%,而数据使用率仅增加了18%。
Low interaction response times are crucial to the experience that mobile apps provide for their users. Unfortunately, existing strategies to alleviate the network latencies that hinder app responsiveness fall short in practice. In particular, caching is plagued by challenges in setting expiration times that match when a resource's content changes, while prefetching hinges on accurate predictions of user behavior that have proven elusive. We present Marauder, a system that synergizes caching and prefetching to improve the speedups achieved by each technique while avoiding their inherent limitations. Key to Marauder is our observation that, like web pages, apps handle interactions by downloading and parsing structured text resources that entirely list (i.e., without needing to consult app binaries) the set of other resources to load. Building on this, Marauder introduces two low-risk optimizations directly from the app's cache. First, guided by cached text files, Marauder prefetches referenced resources during an already-triggered interaction. Second, to improve the efficacy of cached content, Marauder judiciously prefetches about-to-expire resources, extending cache lives for unchanged resources, and downloading updates for lightweight (but crucial) text files. Across a wide range of apps, live networks, interaction traces, and phones, Marauder reduces median and 90th percentile interaction response times by 27.4% and 43.5%, while increasing data usage by only 18%.