Черги повідомлень як шаблон для забезпечення продуктивності і надійності обміну даними у мікросервісній архітектурі
dc.contributor.advisor | Гіоргізова-Гай, Вікторія Шалвівна | |
dc.contributor.author | Кандель, Кирило Володимирович | |
dc.date.accessioned | 2023-05-22T10:48:59Z | |
dc.date.available | 2023-05-22T10:48:59Z | |
dc.date.issued | 2021 | |
dc.description.abstract | Метою даної роботи є дослідження черг повідомлень як архітектурного шаблону для створення мікросервісних додатків, аналіз існуючих рішень та їх порівняння. Також реалізація програми для моделювання роботи мікросервісних систем з використанням черги повідомлень. У роботі було розглянуто подійно-керовану архітектуру як спосіб створення розподілених додатків, зокрема поширений у спільноті патерн публікатор-піднписник. Були знайдені ключові відмінності даної архітектури від запитно-орієнтованої, визначені її переваги та недоліки. Також були проаналізовані архітектурні проблеми, які виникають в процесі роботи з патерном публікатор-підписник та запропоновані варіанти рішень. Далі було проведено порівняльний аналіз доступних рішень в області комунікації сервісів, а саме – черг повідомлень. Для порівняння було обрано три популярних брокери: RabbitMq, Kafka та SQS. В якості критеріїв порівняння були обрані три важливі на сьогоднішній день аспекти: продуктивність, відмовостійкість та безпечність. Результатом дипломної роботи є десктопний застосунок під будь-яку операційну систему для моделювання поведінки мікросервісного додатку з використанням черги повідомлень. Додаток надає можливості встановлення кількості публікаторів та підписників, затримки на передачу та обробку даних, а також виначення розміру повідомлення. Дану роботу пропонується використовувати в якості методичного матеріалу розробниками ПЗ під час проектування та розробки мікросервісних систем, а додаток - в якості засобу перевірки даних систем на коректність роботи в реальних сценаріях. Загальний обсяг роботи: 130 сторінок, 34 рисунки, 9 таблиць, 26 посилань, 4 додатки. | uk |
dc.description.abstractother | The aim of the work is to research a message broker as an architectural pattern for building microservice applications, analyze and compare existing solutions. The other aim is to build an application for simulating a working process of a microservice system that uses a message broker for the service communication. Thia paper considers event-driven architecture as a way to implement distributed applications, especially the publisher-subscriber pattern which is common in the community. Key differences were found between the event-driven architecutres and the request-driven one, proposed their advantages and disadvantages. Also the architectural problems of using the publisher-subscriber pattern were analyzed and solutions were proposed. Then a comparison of available message queues solutions was made. Three popular message brokers were selected for comparison: RabbitMq, Kafka and SQS. For comparison it was chosen three main aspects which are the most important nowadays: performance, reliability and security. The result of the thesis is a cross-platform desktop application which is used for simulating the behavior of the system which uses the message queue. The application provides the ability to set the number of publishers and subscribers, delays in the transmission and data processing, even to choose the size of the message. This work is proposed to be used as a methodological material by software developers during the design and development of microservice systems, and the application - as a way of checking these systems for work correctness in real scenarios. The total volume of work is 130 pages, 34 figures, 9 tables, 26 sources, 4 appendices. | uk |
dc.format.extent | 130 с. | uk |
dc.identifier.citation | Кандель, К. В. Черги повідомлень як шаблон для забезпечення продуктивності і надійності обміну даними у мікросервісній архітектурі : дипломна робота ... бакалавра : 122 Комп'ютерні науки / Кандель Кирило Володимирович. - Київ, 2021. - 130 с. | uk |
dc.identifier.uri | https://ela.kpi.ua/handle/123456789/55936 | |
dc.language.iso | uk | uk |
dc.publisher | КПІ ім. Ігоря Сікорського | uk |
dc.publisher.place | Київ | uk |
dc.subject | мікросервісна архітектура | uk |
dc.subject | подійно-керована архітектура | uk |
dc.subject | шаблон публікатор-підписник | uk |
dc.subject | черга повідомлень | uk |
dc.subject | моделювання | uk |
dc.subject | microservice architecture | uk |
dc.subject | event-driven architecture | uk |
dc.subject | publisher-subscriber pattern | uk |
dc.subject | message broker | uk |
dc.subject | modeling | uk |
dc.title | Черги повідомлень як шаблон для забезпечення продуктивності і надійності обміну даними у мікросервісній архітектурі | uk |
dc.type | Bachelor Thesis | uk |
Файли
Контейнер файлів
1 - 1 з 1
Ескіз недоступний
- Назва:
- Kandel_bakalavr.docx
- Розмір:
- 4.22 MB
- Формат:
- Microsoft Word XML
- Опис:
Ліцензійна угода
1 - 1 з 1
Ескіз недоступний
- Назва:
- license.txt
- Розмір:
- 9.1 KB
- Формат:
- Item-specific license agreed upon to submission
- Опис: