Abstract
Service composition and supporting transactions across composed services are among the major challenges characterizing service-oriented computing. REpresentational State Transfer (REST) is one of the approaches used for implementing Web services that is gaining momentum thanks to its features making it suitable for cloud computing and microservices-based contexts. This paper introduces ReLock, a resilient RESTful transaction model introducing general purpose transactions on RESTful services by a layered approach and a two-phase locking mechanism not requesting any change to the RESTful services involved in a transaction.


Similar content being viewed by others
References
Allamaraju S (2010) RESTful web services cookbook: solutions for improving scalability and simplicity, 1st edn. O’Reilly, Newton
Assante M, Candela L, Castelli D, Cirillo R, Coro G, Frosini L, Lelii L, Mangiacrapa F, Pagano P, Panichi G, Sinibaldi F (2019) Enacting open science by D4Sscience. Future Gener Comput Syst 101:555–563. https://doi.org/10.1016/j.future.2019.05.063
Assante M, Candela L, Castelli D, Cirillo R, Coro G, Frosini L, Lelii L, Mangiacrapa F, Marioli V, Pagano P, Panichi G, Perciante C, Sinibaldi F (2019) The gcube system: delivering virtual research environments as-a-service. Future Gener Comput Syst 95:445–453. https://doi.org/10.1016/j.future.2018.10.035
Bernstein PA, Newcomer E (2009) Principles of transaction processing. Morgan Kaufmann, Burlington
Bouguettaya A, Singh M, Huhns M, Sheng QZ, Dong H, Yu Q, Neiat AG, Mistry S, Benatallah B, Medjahed B, Ouzzani M, Casati F, Liu X, Wang H, Georgakopoulos D, Chen L, Nepal S, Malik Z, Erradi A, Wang Y, Blake B, Dustdar S, Leymann F, Papazoglou M (2017) A service computing manifesto: the next 10 years. Commun ACM 60(4):64–72. https://doi.org/10.1145/2983528
Cabrera F, Copeland G, Cox B, Freund T, Klein J, Storey T, Thatte S (2002) Web services transaction (ws-transaction). Technical report, BEA Systems, International Business Machines Corporation, Microsoft Corporation, Inc. http://xml.coverpages.org/WS-Transaction2002.pdf
da Silva Maciel LAH, Hirata CM (2010) A timestamp-based two phase commit protocol for web services using rest architectural style. J Web Eng 9(3):266–282
da Silva Maciel LAH, Hirata CM (2013) Fault-tolerant timestamp-based two-phase commit protocol for restful services. Softw Pract Exp 43(12):1459–1488. https://doi.org/10.1002/spe.2151
da Silva Maciel LAH, Hirata CM (2009) An optimistic technique for transactions control using rest architectural style. In: Proceedings of the 2009 ACM symposium on applied computing, SAC ’09, pp 664–669. ACM, New York, NY, USA. https://doi.org/10.1145/1529282.1529419
da Silva Maciel LAH, Hirata CM (2011) Extending timestamp-based two phase commit protocol for restful services to meet business rules. In: Proceedings of the 2011 ACM symposium on applied computing, SAC ’11, pp 778–785. ACM, New York, NY, USA. https://doi.org/10.1145/1982185.1982354
Dey A, Fekete A, Röhm U (2015) Rest+t: scalable transactions over http. In: 2015 IEEE international conference on cloud engineering, pp 36–41. https://doi.org/10.1109/IC2E.2015.11
Dusseault LM (2007) HTTP extensions for web distributed authoring and versioning (WebDAV). RFC 4918. https://doi.org/10.17487/RFC4918
Dustdar S, Schreiner W (2005) A survey on web services composition. Int J Web Grid Serv (IJWGS) 1(1):1–30. https://doi.org/10.1504/IJWGS.2005.007545
Elmagarmid AK (1986) A survey of distributed deadlock detection algorithms. SIGMOD Rec 15(3):37–45. https://doi.org/10.1145/15833.15837
Fielding RT, Reschke J (2014) Hypertext transfer protocol (HTTP/1.1): semantics and content. RFC 7231. https://doi.org/10.17487/RFC7231
Fielding RT (2000) Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California, Irvine
Khare R (2003) Extending the representational state transfer (rest) architectural style for decentralized systems. Ph.D. thesis, University of California, Irvine
Khare R, Taylor RN (2004) Extending the representational state transfer (rest) architectural style for decentralized systems. In: Proceedings of the 26th international conference on software engineering, ICSE ’04, pp 428–437. IEEE Computer Society, Washington, DC, USA
Kochman S, Wojciechowski PT, Kmieciak M (2012) Batched transactions for restful web services. In: Proceedings of the 11th international conference on current trends in web engineering, ICWE’11, pp 86–98. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-27997-3_8
Lampesberger H (2016) Technologies for web and cloud service interaction: a survey. SOCA 10(2):71–110. https://doi.org/10.1007/s11761-015-0174-1
Lemos AL, Daniel F, Benatallah B (2015) Web service composition: a survey of techniques and tools. ACM Comput Surv. https://doi.org/10.1145/2831270
Marinos A, Razavi A, Moschoyiannis S, Krause P (2009) Retro: a consistent and recoverable restful transaction model. In: Proceedings of the 2009 IEEE international conference on web services, ICWS ’09, pp 181–188. IEEE Computer Society, Washington, DC, USA. https://doi.org/10.1109/ICWS.2009.99
Martin J (1983) Managing the database environment. Prentice-Hall, Prentice
Mihindukulasooriya N, García-Castro R, Esteban-Gutiérrez M, Gómez-Pérez A (2016) A survey of restful transaction models: One model does not fit all. J Web Eng 15(1–2):130–169
Mihindukulasooriya N, Esteban-Gutiérrez M, García-Castro R (2014) Seven challenges for restful transaction models. In: Proceedings of the 23rd international conference on world wide web, WWW ’14 companion, pp 949–952. ACM, New York, NY. https://doi.org/10.1145/2567948.2579218
Nakamoto S (2008) Bitcoin: A peer-to-peer electronic cash system. http://bitcoin.org/bitcoin.pdf
Nielsen HF, Mogul J, Masinter LM, Fielding RT, Gettys J, Leach PJ, Berners-Lee T (1999) Hypertext Transfer Protocol—HTTP/1.1. RFC 2616. https://doi.org/10.17487/RFC2616
Papazoglou MP, Kratz B (2007) Web services technology in support of business transactions. SOCA 1(1):51–63. https://doi.org/10.1007/s11761-007-0002-3
Papazoglou MP, Traverso P, Dustdar S, Leymann F (2007) Service-oriented computing: state of the art and research challenges. Computer 40(11):38–45. https://doi.org/10.1109/MC.2007.400
Pardon G, Pautasso C (2011) Towards distributed atomic transactions over restful services. In: REST: From research to practice, pp 507–524. Springer, New York, NY. https://doi.org/10.1007/978-1-4419-8303-9_23
Pardon G, Pautasso C (2014) Atomic distributed transactions: a restful design. In: Proceedings of the 23rd international conference on world wide web, WWW ’14 companion, pp 943–948. ACM, New York, NY. https://doi.org/10.1145/2567948.2579221
Pautasso C, Zimmermann O, Leymann F (2008) Restful web services vs. “big” web services: Making the right architectural decision. In: Proceedings of the 17th international conference on world wide web, WWW ’08, p. 805–814. Association for Computing Machinery, New York, NY. https://doi.org/10.1145/1367497.1367606
Razavi A, Marinos A, Moschoyiannis S, Krause P (2009) Restful transactions supported by the isolation theorems. In: Proceedings of the 9th international conference on web engineering, ICWE ’9, pp 394–409. Springer, Berlin. https://doi.org/10.1007/978-3-642-02818-2_32
Richardson L, Ruby S (2007) Restful Web Services, 1st edn. O’Reilly, Newton
Weikum G, Vossen G (2002) Chapter Four—Concurrency control algorithms. In: Weikum G, Vossen G (eds) Transactional information systems. The Morgan Kaufmann series in data management systems, pp 125–183. Morgan Kaufmann, San Francisco. https://doi.org/10.1016/B978-155860508-4/50005-3
Acknowledgements
This work has received funding from the European Union’s Horizon 2020 research and innovation programme under Blue Cloud project (Grant Agreement No. 862409).
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Frosini, L., Pagano, P., Candela, L. et al. ReLock: a resilient two-phase locking RESTful transaction model. SOCA 15, 75–92 (2021). https://doi.org/10.1007/s11761-020-00311-z
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11761-020-00311-z