Empirically Assessing Opportunities for Prefetching and Caching in Mobile Apps

Empirically Assessing Opportunities for Prefetching and Caching in Mobile Apps
复制标题

DOI:
10.1145/3238147.3238215
复制
发表时间:
2018-09
期刊:
2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子:
--
通讯作者:
Yixue Zhao;Paul Wat;Marcelo Schmitt Laser;N. Medvidović
Yixue Zhao;Paul Wat;Marcelo Schmitt Laser;N. Medvidović
中科院分区:
其他
文献类型:
--
作者:
Yixue Zhao;Paul Wat;Marcelo Schmitt Laser;N. Medvidović

文献摘要

相似文献

移动软件中的网络延迟对用户体验产生了很大的影响,并带来了严重的经济后果。预摘要和缓存已显示在减少基于浏览器的系统中的潜伏期有效。但是,由于网络交互的差异,这些技术不能直接应用于移动应用的新兴域。此外,缺乏对可能适合移动应用程序域的预取预约和缓存技术的研究,尚不清楚这种技术是否可以有效,或者它们是否可行。本文通过进行全面的研究来了解1000多个受欢迎的Android应用程序中HTTP请求的特征,迈出了第一步,以回答这些问题。我们的工作着重于使用静态程序分析技术的请求的预摘要性以及由此产生的响应的缓存。我们发现,在移动应用程序中利用预取用和缓存的机会有大量机会,但是合适的技术必须考虑到应用程序网络交互的性质和特质,例如不可信的HTTP http标头信息。我们的观察结果为开发人员提供了指南,以便在应用程序开发中利用预取和缓存方案,并激发该领域的未来研究。
Network latency in mobile software has a large impact on user experience, with potentially severe economic consequences. Prefetching and caching have been shown effective in reducing the latencies in browser-based systems. However, those techniques cannot be directly applied to the emerging domain of mobile apps because of the differences in network interactions. Moreover, there is a lack of research on prefetching and caching techniques that may be suitable for the mobile app domain, and it is not clear whether such techniques can be effective or whether they are even feasible. This paper takes the first step toward answering these questions by conducting a comprehensive study to understand the characteristics of HTTP requests in over 1,000 popular Android apps. Our work focuses on the prefetchability of requests using static program analysis techniques and cacheability of resulting responses. We find that there is a substantial opportunity to leverage prefetching and caching in mobile apps, but that suitable techniques must take into account the nature of apps' network interactions and idiosyncrasies such as untrustworthy HTTP header information. Our observations provide guidelines for developers to utilize prefetching and caching schemes in app development, and motivate future research in this area.