{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,1]],"date-time":"2026-06-01T23:26:08Z","timestamp":1780356368423,"version":"3.54.1"},"reference-count":81,"publisher":"Association for Computing Machinery (ACM)","issue":"6","license":[{"start":{"date-parts":[[2017,11,22]],"date-time":"2017-11-22T00:00:00Z","timestamp":1511308800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100002322","name":"CAPES","doi-asserted-by":"crossref","award":["1681815 and 7619-15-4"],"award-info":[{"award-number":["1681815 and 7619-15-4"]}],"id":[{"id":"10.13039\/501100002322","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100003593","name":"CNPq","doi-asserted-by":"crossref","award":["303232\/2015-3"],"award-info":[{"award-number":["303232\/2015-3"]}],"id":[{"id":"10.13039\/501100003593","id-type":"DOI","asserted-by":"crossref"}]},{"name":"Alexander von Humboldt","award":["BRA 1184533 HFSTCAPES-P"],"award-info":[{"award-number":["BRA 1184533 HFSTCAPES-P"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Comput. Surv."],"published-print":{"date-parts":[[2018,11,30]]},"abstract":"<jats:p>A new form of caching, namely application-level caching, has been recently employed in web applications to improve their performance and increase scalability. It consists of the insertion of caching logic into the application base code to temporarily store processed content in memory and then decrease the response time of web requests by reusing this content. However, caching at this level demands knowledge of the domain and application specificities to achieve caching benefits, given that this information supports decisions such as what and when to cache content. Developers thus must manually manage the cache, possibly with the help of existing libraries and frameworks. Given the increasing popularity of application-level caching, we thus provide a survey of approaches proposed in this context. We provide a comprehensive introduction to web caching and application-level caching, and present state-of-the-art work on designing, implementing, and managing application-level caching. Our focus is not only on static solutions but also approaches that adaptively adjust caching solutions to avoid the gradual performance decay that caching can suffer over time. This survey can be used as a start point for researchers and developers, who aim to improve application-level caching or need guidance in designing application-level caching solutions, possibly with humans out-of-the-loop.<\/jats:p>","DOI":"10.1145\/3145813","type":"journal-article","created":{"date-parts":[[2017,11,22]],"date-time":"2017-11-22T16:25:08Z","timestamp":1511367908000},"page":"1-34","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":23,"title":["Understanding Application-Level Caching in Web Applications"],"prefix":"10.1145","volume":"50","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-2522-4700","authenticated-orcid":false,"given":"Jhonny","family":"Mertz","sequence":"first","affiliation":[{"name":"Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Ingrid","family":"Nunes","sequence":"additional","affiliation":[{"name":"Universidade Federal do Rio Grande do Sul and TU Dortmund, Brazil"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2017,11,22]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jnca.2015.06.011"},{"key":"e_1_2_1_2_1","first-page":"1","article-title":"A survey of web caching and prefetching","volume":"3","author":"Ali Waleed","year":"2011","journal-title":"Int. J. Adv. Soft Comput. Appl."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.knosys.2012.02.015"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.dss.2012.04.011"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.eswa.2011.05.009"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28997-2_34"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1088149.1088185"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2254756.2254766"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/838237.838623"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.5555\/1778666.1778673"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMST.2004.5342239"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1515984.1515986"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/375663.375736"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the USENIX Symposium on Internet Technologies and Systems. 18","author":"Cao P."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950303"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814290"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.peva.2005.11.001"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/PDP.2014.34"},{"key":"e_1_2_1_19_1","volume-title":"International Symposium on Performance Evaluation of Computer 8 Telecommunication Systems. IEEE, 77--83","author":"Abdouni Khayari Rachid El","year":"2011"},{"key":"e_1_2_1_20_1","volume-title":"Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 371--385","author":"Fan Bin","year":"2013"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/TKDE.2005.10"},{"key":"e_1_2_1_22_1","first-page":"62","article-title":"Review of algorithms for web pre-fetching and caching","volume":"1","author":"Gawade Sandhaya","year":"2012","journal-title":"Int. J. Adv. Res. Comput. Commun. Eng."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.5555\/2789813.2789814"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2663165.2663317"},{"key":"e_1_2_1_25_1","unstructured":"Shahram Ghandeharizadeh Jason Yap and Sumita Barahmand. 2012. COSAR-CQN: An Application Transparent Approach to Cache Consistency. Retrieved from http:\/\/dblab.usc.edu\/users\/papers\/cosarcqntr.pdf.  Shahram Ghandeharizadeh Jason Yap and Sumita Barahmand. 2012. COSAR-CQN: An Application Transparent Approach to Cache Consistency. Retrieved from http:\/\/dblab.usc.edu\/users\/papers\/cosarcqntr.pdf."},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/NCA.2011.55"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2001420.2001455"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-25821-3_17"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1109\/DeSE.2015.13"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/SOCA.2010.5707138"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.knosys.2006.11.004"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1380584.1380585"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2591062.2591198"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0053381"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1561\/1900000005"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.5555\/2500995"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.5555\/977401.978167"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.5555\/1885872.1885902"},{"key":"e_1_2_1_39_1","volume-title":"GD-wheel. In Proceedings of the 10th European Conference on Computer Systems. ACM Press","author":"Li Conglong"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/QSIC.2006.9"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2749469.2750416"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2600428.2609490"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2668930.2688040"},{"key":"e_1_2_1_44_1","volume-title":"Proceedings of the 2nd USENIX conference on File and Storage Technologies. USENIX Association","author":"Megiddo Nimrod"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2004.1297303"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCCT.2010.5640464"},{"key":"e_1_2_1_47_1","unstructured":"Jhonny Mertz. 2017. Understanding and Automating Application-level Caching. Master\u2019s thesis. UFRGS. Retreived from https:\/\/www.lume.ufrgs.br\/handle\/10183\/156813?show=full.  Jhonny Mertz. 2017. Understanding and Automating Application-level Caching. Master\u2019s thesis. UFRGS. Retreived from https:\/\/www.lume.ufrgs.br\/handle\/10183\/156813?show=full."},{"key":"e_1_2_1_48_1","first-page":"20","article-title":"A qualitative study of application-level caching","volume":"43","author":"Mertz Jhonny","year":"2016","journal-title":"IEEE Trans. Softw. Eng."},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1186\/s13174-015-0018-4"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491411.2491416"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.5555\/2482626.2482663"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/954339.954341"},{"key":"e_1_2_1_54_1","volume-title":"Proceedings of the 9th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, 279--292","author":"Ports Dan R. K.","year":"2010"},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1002\/bltj.20011"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICIS.2014.6912120"},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1109\/TKDE.2005.89"},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jnca.2009.03.005"},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/2670979.2671007"},{"key":"e_1_2_1_60_1","volume-title":"Proceedings of the IEEE International Conference on Intelligent Systems. IEEE, 420--425","author":"Sajeev G. P."},{"key":"e_1_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009891"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884829"},{"key":"e_1_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1109\/MIC.2007.3"},{"key":"e_1_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1109\/DEEC.2005.25"},{"key":"e_1_2_1_65_1","first-page":"4","article-title":"Practical run-time checking via unobtrusive property caching","volume":"15","author":"Stulova Nataliia","year":"2015","journal-title":"Theory Pract. Logic Program."},{"key":"e_1_2_1_66_1","volume-title":"Siti Mariyam Shamsuddin, and Ajith Abraham","author":"Sulaiman Sarina","year":"2013"},{"key":"e_1_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.14311\/NNW.2011.21.025"},{"key":"e_1_2_1_68_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISMA.2009.5164846"},{"key":"e_1_2_1_69_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10515-013-0119-x"},{"key":"e_1_2_1_70_1","doi-asserted-by":"publisher","DOI":"10.1109\/PERVASIVE.2015.7087016"},{"key":"e_1_2_1_71_1","first-page":"2508","article-title":"Improved server response using web pre-fetching: A review","volume":"6","author":"Khan Veena Singh Bhadauriya Asif Ullah","year":"2013","journal-title":"Int. J. Adv. Eng. Technol."},{"key":"e_1_2_1_72_1","first-page":"3","article-title":"A survey on applications of neural networks and evolutionary techniques in web caching. IETE Techni","volume":"26","author":"Venketesh P.","year":"2009","journal-title":"Rev."},{"key":"e_1_2_1_73_1","doi-asserted-by":"publisher","DOI":"10.1145\/505696.505701"},{"key":"e_1_2_1_74_1","doi-asserted-by":"publisher","DOI":"10.1145\/2677832.2677837"},{"key":"e_1_2_1_75_1","doi-asserted-by":"publisher","DOI":"10.1109\/MNET.2006.1580916"},{"key":"e_1_2_1_76_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384690"},{"key":"e_1_2_1_77_1","doi-asserted-by":"publisher","DOI":"10.1109\/MIC.2013.80"},{"key":"e_1_2_1_78_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01189992"},{"key":"e_1_2_1_79_1","doi-asserted-by":"publisher","DOI":"10.5555\/2874988.2875009"},{"key":"e_1_2_1_80_1","doi-asserted-by":"publisher","DOI":"10.1109\/TKDE.2015.2427795"},{"key":"e_1_2_1_81_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMST.2015.2420097"},{"key":"e_1_2_1_82_1","volume-title":"Proceedings of the 4th USENIX Conference on Hot Topics in Cloud Computing. USENIX Association","author":"Zhu Timothy"}],"container-title":["ACM Computing Surveys"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3145813","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3145813","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:13:32Z","timestamp":1750212812000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3145813"}},"subtitle":["A Comprehensive Introduction and Survey of State-of-the-Art Approaches"],"short-title":[],"issued":{"date-parts":[[2017,11,22]]},"references-count":81,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2018,11,30]]}},"alternative-id":["10.1145\/3145813"],"URL":"https:\/\/doi.org\/10.1145\/3145813","relation":{},"ISSN":["0360-0300","1557-7341"],"issn-type":[{"value":"0360-0300","type":"print"},{"value":"1557-7341","type":"electronic"}],"subject":[],"published":{"date-parts":[[2017,11,22]]},"assertion":[{"value":"2017-02-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-09-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-11-22","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}