Cacheoptimizer: Helping Developers Configure Caching Frameworks For Hibernate-Based Database-Centric Web Applications

FSE(2016)

引用 51|浏览60
暂无评分
摘要
To help improve the performance of database-centric cloud-based web applications, developers usually use caching frameworks to speed up database accesses. Such caching frameworks require extensive knowledge of the application to operate effectively. However, all too often developers have limited knowledge about the intricate details of their own application. Hence, most developers find configuring caching frameworks a challenging and time-consuming task that requires extensive and scattered code changes. Furthermore, developers may also need to frequently change such configurations to accommodate the ever changing workload. In this paper, we propose Cache Optimizer, a lightweight approach that helps developers optimize the configuration of caching frameworks for web applications that are implemented using Hibernate. Cache Optimizer leverages readily-available web logs to create mappings between a workload and database accesses. Given the mappings, Cache Optimizer discovers the optimal cache configuration using coloured Petri nets, and automatically adds the appropriate cache configurations to the application. We evaluate Cache Optimizer on three open-source web applications. We find that i) Cache Optimizer improves the throughput by 27-138%; and ii) after considering both the memory cost and throughput improvement, Cache Optimizer still brings statistically significant gains (with mostly large effect sizes) in comparison to the application's default cache configuration and to blindly enabling all possible caches.
更多
查看译文
关键词
Performance,application-level cache,ORM,web application
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要