Використання шаблону проєктування Saga для керування транзакціями в мікросервісній архітектурі

DOI: 10.31673/2412-9070.2024.023941

  • Молявчик В. М. (Molyavchyk V. M.) Державний університет інформаційно-комунікаційних технологій, Київ

Анотація

Використання мікросервісної архітектури в розробленні програмного забезпечення, у межах якого кожен сервіс є самодостатнім учасником зі своєю зоною відповідальності, своїм окремим сховищем даних, набором технологій та робочим оточенням, кидає виклик у контексті роботи транзакцій у розподіленому режимі роботи сервісу. Адже з погляду надійності й цілісності системи вкрай важливо забезпечити консистентність даних, що передбачає відповідність визначеним обмеженням і правилам, відсутність протиріч та узгодженість даних між компонентами системи. Для забезпечення консистентності даних може бути використано шаблон проєктування SAGA, що передбачає набір інструкцій для коректного керування транзакціями в розподіленій архітектурі.

Ключові слова: мікросервіс; сховище даних; розподілена транзакція; SAGA; консистентність.

Список використаної літератури
1. SAGA Pattern Briefly [Електронний ресурс]. URL: https://medium.com/trendyol-tech/saga-pattern-briefly-5b6cf22dfabc
2. What is a Distributed Transaction? [Електронний ресурс]. URL: https://hazelcast.com/glossary/distributed-transaction/
3. Saga Pattern in Microservices [Електронний ресурс]. URL: https://www.baeldung.com/cs/saga-pattern-microservices
4. Saga Pattern [Електронний ресурс]. URL: https://www.dremio.com/wiki/saga-pattern/
5. SAGA Design Pattern [Електронний ресурс]. URL: https://www.geeksforgeeks.org/saga-design-pattern/
6. Tushych A. M. Analysis of problems of production modernization through implementation of IT technologies // Economic trends: new opportunities and threats: International scientific conference. Le Mans, France: Le Mans University, 2021. 2021. November 19-20. P. 58–61.
7. Microservice Architecture, Pattern Saga [Електронний ресурс]. URL: https://microservices.io/patterns/data/saga.html

Номер
Розділ
Статті