skip to main content
research-article

CBPCS: A Cache-block-based Service Process Caching Strategy to Accelerate the Execution of Service Processes

Published:29 October 2020Publication History
Skip Editorial Notes Section

Editorial Notes

The authors have requested minor, non-substantive changes to the VoR and, in accordance with ACM policies, a Corrected VoR was published on November 4, 2020. For reference purposes the VoR may still be accessed via the Supplemental Material section on this page.

Skip Abstract Section

Abstract

With the development of cloud computing and the advent of the Web 2.0 era, composing a set of Web services as a service process is becoming a common practice to provide more functional services. However, a service process involves multiple service invocations over the network, which incurs a huge time cost and could become a bottleneck to performance. To accelerate its execution, we propose an engine-side cache-block-based service process caching strategy (CBPCS). It is based on, and derives its advantages from, three key ideas. First, the invocation of Web services embodies semantics, which enables the application of semantic-based caching. Second, cache blocks are identified from a service process, and each block is equipped with a separate cache so that the time overhead of service invocation and caching can be minimized. Third, a replacement strategy is introduced taking into account time and space factors to manage the space allocation for a process with multiple caches. The algorithms and methods used in CBPCS are introduced in detail. Moreover, how CBPCS can be applied to multiple service process models is also investigated. Finally, CBPCS is validated via comparison experiments, which shows the considerable improvements of CBPCS over other strategies.

Skip Supplemental Material Section

Supplemental Material

References

  1. Khalil Amiri, Sanghyun Park, Renu Tewari, and Sriram Padmanabhan. 2003. DBProxy: A dynamic data cache for Web applications. In Proceedings of the 19th International Conference on Data Engineering. 821--831. DOI:https://doi.org/10.1109/ICDE.2003.1260881Google ScholarGoogle ScholarCross RefCross Ref
  2. Martin F. Arlitt, Ludmila Cherkasova, John Dilley, Rich Friedrich, and Tai Jin. 2000. Evaluating content management techniques for Web proxy caches. SIGMETRICS Perf. Eval. Rev. 27, 4 (2000), 3--11. DOI:https://doi.org/10.1145/346000.346003Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Jesus Bellido, Rosa Alarcón, and Cesare Pautasso. 2013. Control-flow patterns for decentralized RESTful service composition. ACM Trans. Web 8, 1, Article 5 (Dec. 2013), 30 pages. DOI:https://doi.org/10.1145/2535911Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Djamal Benslimane, Schahram Dustdar, and Amit P. Sheth. 2008. Services mashups: The new generation of web applications. IEEE Internet Comput. 12, 5 (2008), 13--15. DOI:https://doi.org/10.1109/MIC.2008.110Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Frederik Bülthoff and Maria Maleshkova. 2014. RESTful or RESTless—Current state of today’s top web APIs. In Proceedings of the 2nd Workshop on Services and Applications over Linked APIs and Data co-located with the 10th Extended Semantic Web Conference (ESWC’14). 42--51.Google ScholarGoogle ScholarCross RefCross Ref
  6. Jian Cao, Jie Wang, Haiyan Zhao, and Xiaohan Sun. 2013. A service process optimization method based on model refinement. J. Supercomput. 63, 1 (2013), 72--88. DOI:https://doi.org/10.1007/s11227-010-0513-0Google ScholarGoogle ScholarCross RefCross Ref
  7. Boris Chidlovskii and Uwe M. Borghoff. 2000. Semantic caching of web queries. VLDB J. 9, 1 (2000), 2--17. DOI:https://doi.org/10.1007/s007780050080Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. David Chiu and Gagan Agrawal. 2009. Hierarchical caches for grid workflows. In Proceedings of the 9th IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGrid’09). 228--235. DOI:https://doi.org/10.1109/CCGRID.2009.10Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Chiu, A. Shetty, and G. Agrawal. 2010. Elastic cloud caches for accelerating service-oriented computations. In Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis (SC’10). 1--11. DOI:https://doi.org/10.1109/SC.2010.21Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Shaul Dar, Michael J. Franklin, Björn T́Hór Jónsson, Divesh Srivastava, and Michael Tan. 1996. Semantic data caching and replacement. In Proceedings of 22th International Conference on Very Large Data Bases (VLDB’96). 330--341. http://www.vldb.org/conf/1996/P330.PDFGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  11. Anindya Datta, Kaushik Dutta, Qianhui Liang, and Debra VanderMeer. 2012. SOA performance enhancement through XML fragment caching. Info. Sys. Res. 23, 2 (June 2012), 505--535. DOI:https://doi.org/10.1287/isre.1110.0368Google ScholarGoogle Scholar
  12. (IBM) Diane Jordan and (Microsoft) John Evdemon. 2007. Web Services Business Process Execution Language, version 2.0. OASIS. Retrieved from http://docs.oasis-open.org/wsbpel/2.0/OS/ version 2.0.Google ScholarGoogle Scholar
  13. Elyas Ben Hadj Yahia, Jean-Rémy Falleri, and Laurent Réveillère. 2017. Polly: A language-based approach for custom change detection of web service data. In Proceedings of the 15th Conference on Service-Oriented Computing. 430--444. DOI:https://doi.org/10.1007/978-3-319-69035-3_30Google ScholarGoogle ScholarCross RefCross Ref
  14. Martin Garriga, Cristian Mateos, Andres Flores, Alejandra Cechich, and Alejandro Zunino. 2016. RESTful service composition at a glance. J. Netw. Comput. Appl. 60, C (January 2016), 32--53. DOI:https://doi.org/10.1016/j.jnca.2015.11.020Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Object Management Group. 2013. Business Process Model and Notation (BPMN) Version 2.0. Retrieved from http://www.omg.org/spec/BPMN/2.0 version 2.0.Google ScholarGoogle Scholar
  16. Carlos Guerrero, Carlos Juiz, and Ramon Puigjaner. 2010. Rule-based system to improve performance on mash-up web applications. In Distributed Computing and Artificial Intelligence, Andre Ponce de Leon F. de Carvalho, Sara Rodríguez-González, Juan F. De Paz Santana, and Juan M. Corchado Rodríguez (Eds.). Springer, Berlin, 577--584.Google ScholarGoogle Scholar
  17. Osama Al-Haj Hassan, Lakshmish Ramaswamy, and John A. Miller. 2009. MACE: A dynamic caching framework for mashups. In Proceedings of the IEEE International Conference on Web Services (ICWS’09). 75--82. DOI:https://doi.org/10.1109/ICWS.2009.119Google ScholarGoogle Scholar
  18. Gaëtan Heidsieck, Daniel de Oliveira, Esther Pacitti, Christophe Pradal, François Tardieu, and Patrick Valduriez. 2019. Adaptive caching for data-intensive scientific workflows in the cloud. In Database and Expert Systems Applications, Sven Hartmann, Josef Küng, Sharma Chakravarthy, Gabriele Anderst-Kotsis, A. Min Tjoa, and Ismail Khalil (Eds.). Springer International Publishing, Cham, 452--466.Google ScholarGoogle Scholar
  19. Arinbjarnar María Þórsson Bjarnsteinn Franklin Michael J. Jónsson, Bjorn Þór and Divesh Srivastava. 2006. Performance and overhead of semantic cache management. ACM Trans. Internet Technol. 6, 3 (August 2006), 302--331. DOI:https://doi.org/10.1145/1151087.1151091Google ScholarGoogle Scholar
  20. Balachander Krishnamurthy and Jennifer Rexford. 2001. Web Protocols and Practice—HTTP/1.1, Networking Protocols, Caching, and Traffic Measurement. Addison-Wesley.Google ScholarGoogle Scholar
  21. Dongwon Lee and Wesley W. Chu. 1999. Semantic caching via query matching for web sources. In Proceedings of the 1999 ACM CIKM International Conference on Information and Knowledge Management. 77--85. DOI:https://doi.org/10.1145/319950.319960Google ScholarGoogle Scholar
  22. Angel Lagares Lemos, Florian Daniel, and Boualem Benatallah. 2015. Web service composition: A survey of techniques and tools. ACM Comput. Surv. 48, 3, Article 33 (December 2015), 41 pages. DOI:https://doi.org/10.1145/2831270Google ScholarGoogle Scholar
  23. Antonio Navarro and Anayansi da Silva. 2016. A metamodel-based definition of a conversion mechanism between SOAP and RESTful web services. Comput. Stand. Interfaces 48, C (November 2016), 49--70. DOI:https://doi.org/10.1016/j.csi.2016.03.004Google ScholarGoogle Scholar
  24. André Pessoa Negrão, Carlos Roque, Paulo Ferreira, and Luís Veiga. 2015. An adaptive semantics-aware replacement algorithm for web caching. J. Internet Serv. Appl. 6, 1 (February 2015), 1. DOI:https://doi.org/10.1186/s13174-015-0018-4Google ScholarGoogle ScholarCross RefCross Ref
  25. Binh Thanh Nguyen, Duc Huu Nguyen, and Thuy Thanh Nguyen. 2014. Translation from BPMN to BPEL, current techniques and limitations. In Proceedings of the 5th Symposium on Information and Communication Technology (SoICT’14). 21--30. DOI:https://doi.org/10.1145/2676585.2676602Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Apostolos Papageorgiou, Marius Schatke, Stefan Schulte, and Ralf Steinmetz. 2011. Enhancing the caching of web service responses on wireless clients. In Proceedings of the 2011 IEEE International Conference on Web Services (ICWS’11). IEEE Computer Society, Los Alamitos, CA, 9--16. DOI:https://doi.org/10.1109/ICWS.2011.52Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Stefan Podlipnig and László Böszörményi. 2003. A survey of Web cache replacement strategies. ACM Comput. Surv. 35, 4 (2003), 374--398. DOI:https://doi.org/10.1145/954339.954341Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Francisco Rodrigo Duro, Fabrizio Marozzo, Javier Garcia Blas, Domenico Talia, and Paolo Trunfio. 2016. Exploiting in-memory storage for improving workflow executions in cloud platforms. J. Supercomput. 72, 11 (November 2016), 4069--4088. DOI:https://doi.org/10.1007/s11227-016-1678-yGoogle ScholarGoogle Scholar
  29. Nicolas Le Scouarnec, Christoph Neumann, and Gilles Straub. 2013. Cache policies for cloud-based systems: To keep or not to keep. arxiv:1312.0499. Retrieved from http://arxiv.org/abs/1312.0499.Google ScholarGoogle Scholar
  30. Stefan Seltzsam, Roland Holzhauser, and Alfons Kemper. 2005. Semantic caching for web services. In Proceedings of the 3rd International Conference on Service-Oriented Computing (ICSOC’05). 324--340. DOI:https://doi.org/10.1007/11596141_25Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Sergio Esteves and Luis Veiga. 2016. WaaS: Workflow-as-a-service for the cloud with scheduling of continuous and data-intensive workflows. Comput. J. 59, 3 (2016), 371--383.Google ScholarGoogle ScholarCross RefCross Ref
  32. Jun’ichi Tatemura, Wang-Pin Hsiung, and Wen-Syan Li. 2003. Acceleration of web service workflow execution through edge computing. In Proceedings of the 12th International World Wide Web Conference—Alternate Paper Tracks (WWW’03).Google ScholarGoogle Scholar
  33. Jussi Vanhatalo, Hagen Völzer, Frank Leymann, and Simon Moser. 2008. Automatic workflow graph refactoring and completion. In Proceedings of the 6th International Conference on Service-Oriented Computing (ICSOC’08). 100--115. DOI:https://doi.org/10.1007/978-3-540-89652-4_11Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. D. Yuan, Y. Yang, X. Liu, and J. Chen. 2010. A cost-effective strategy for intermediate data storage in scientific cloud workflow systems. In Proceedings of the 2010 IEEE International Symposium on Parallel Distributed Processing (IPDPS’10). 1--12. DOI:https://doi.org/10.1109/IPDPS.2010.5470453Google ScholarGoogle Scholar
  35. D. Yuan, Y. Yang, X. Liu, W. Li, L. Cui, M. Xu, and J. Chen. 2013. A highly practical approach toward achieving minimum data sets storage cost in the cloud. IEEE Trans. Parallel Distrib. Syst. 24, 6 (June 2013), 1234--1244. DOI:https://doi.org/10.1109/TPDS.2013.20Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Dong Yuan, Yun Yang, Xiao Liu, Gaofeng Zhang, and Jinjun Chen. 2012. A data dependency based strategy for intermediate data storage in scientific cloud workflow systems. Concurr. Comput.: Pract. Exp. 24, 9 (2012), 956--976. DOI:https://doi.org/10.1002/cpe.1636Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. CBPCS: A Cache-block-based Service Process Caching Strategy to Accelerate the Execution of Service Processes

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!