霂瑞霂��撘����迨��辣: http://elartu.tntu.edu.ua/handle/lib/45697
Title: Створення backend частини мультисайтової мікросервісної архітектури засобами PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch та Kong API Gateway
Other Titles: Creation of the Backend Part of the Multisite Microservice Architecture Using PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch and Kong API Gateway
Authors: Бойчук, Олександр Антонович
Boichuk, Oleksandr Antonovych
Affiliation: ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра комп’ютерних наук, м. Тернопіль, Україна
Bibliographic description (Ukraine): Бойчук О. А. Створення backend частини мультисайтової мікросервісної архітектури засобами PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch та Kong API Gateway : робота на здобуття кваліфікаційного ступеня бакалавра : спец. 122 - комп'ютерні науки / наук. кер. Б. Б. Млинко. Тернопіль : Тернопільський національний технічний університет імені Івана Пулюя, 2024. 56 с.
Issue Date: 28-六月-2024
Submitted date: 14-六月-2024
Date of entry: 1-七月-2024
Country (code): UA
Place of the edition/event: ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна
Supervisor: Млинко, Богдана Богданівна
Committee members: Осухівська, Галина Михайлівна
UDC: 004.04
Keywords: мікросервісна архітектура
microservices architecture
мультисайтовість
multisite capability
бази даних
databases
веб-сайт
website
backend
API
PHP
Laravel
Abstract: Кваліфікаційна робота присвячена розробці backend частини мультисайтової мікросервісної архітектури з використанням PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch та Kong API Gateway. В першому розділі кваліфікаційної роботи детально проаналізовано предметну область, висвітлено переваги та недоліки мікросервісної архітектури, а також проаналізовано вимоги та сплановано розробку. В другому розділі кваліфікаційної роботи досліджено процес проєктування мікросервісної архітектури, описано функціональність мікросервісів, сформовано базу даних для кожного мікросервісу. В третьому розділі кваліфікаційної роботи описано розробку мікросервісів, їх інтеграцію та налаштування, проведено проєктування, тестування та застосування розробленої системи у реальному веб-сайті. Об’єкт дослідження: процес розробки backend частина мультисайтової мікросервісної архітектури. Предмет дослідження: засоби і методи розробки мікросервісів з підтримкою мультисайтовості, зокрема PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch та Kong API Gateway. The qualification work is dedicated to developing the backend part of a multisite microservices architecture using PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch, and Kong API Gateway. In the first section of the qualification work, the subject area is thoroughly analyzed, highlighting the advantages and disadvantages of microservices architecture, as well as analyzing requirements and planning development. The second section of the qualification work explores the process of designing a microservices architecture, describing the functionality of microservices, and forming a database for each microservice. The third section of the qualification work describes the development, integration, and configuration of microservices, as well as the design, testing, and application of the developed system in a real website. Research object: the process of developing the backend part of a multi-site microservices architecture. Subject of the study: tools and methods for developing microservices with multisite support, including PHP Laravel, Docker, NGINX, Percona, Redis, Elasticsearch, and Kong API Gateway.
Content: Вступ 9 Розділ 1. Аналіз предметної області та постановка завдання 10 1.1 Аналіз предметної області 10 1.1.1 Особливості мультисайтової архітектури 10 1.1.2 Переваги та недоліки мікросервісної архітектури 11 1.2 Огляд існуючих рішень 12 1.3 Планування розробки backend частини 13 1.3.1 Вимоги до мультисайтової мікросервісної архітектури 13 1.4 Формування структури мікросервісної архітектури 14 1.4.1 Дизайн мікросервісів 14 1.4.2 Взаємодія між мікросервісами 15 1.5 Обґрунтування використовуваних технологій 16 1.6 Висновок до першого розділу 18 Розділ 2. Проєктування backend частини мультисайтової мікросервісної архітектури 19 2.1 Проєктування мікросервісної архітектури 19 2.2 Проєктування баз даних мікросервісів 20 2.3 Висновок до другого розділу 29 Розділ 3. Реалізація та тестування backend частини мультисайтової мікросервісної архітектури 30 3.1 Розробка мікросервісів 30 3.1.1 Розробка мікросервісу товарів 31 3.1.2 Розробка мікросервісу категорій 33 3.1.3 Розробка мікросервісу блогу 34 3.1.4 Розробка мікросервісу оплат 35 3.1.5 Розробка мікросервісу авторизації 36 3.2 Інтеграція та налаштування мікросервісів 38 3.3 Тестування мультисайтової мікросервісної архітектури 39 3.3.1 Застосування розробленої мультисайтової мікросервісної архітектури 42 3.4 Висновок до третього розділу 45 Розділ 4. Безпека життєдіяльності, основи охорони праці 46 4.1 Ергономічні проблеми безпеки життєдіяльності 46 4.2 Загальні вимоги безпеки з охорони праці для користувачів ПК 49 4.3 Висновок до четвертого розділу 51 Висновки 52 Перелік джерел 53 Додатки
URI: http://elartu.tntu.edu.ua/handle/lib/45697
Copyright owner: © Бойчук Олександр Антонович, 2024
References (Ukraine): 1. Multi-Site Solutions. Integral Vision. URL: https://integralvision.eu/en/expertise/multi-site-solutions (дата звернення: 04.02.2024).
2. Benefits of Using a Multisite for Your Multi-organizational websites. Bring Results. URL: https://bringresults.com/blog/2021/04/22/10-benefits-of-using-a-multisite-for-your-multi-organizational-websites/ (дата звернення: 04.02.2024).
3. Benefits of Using a Multisite. Amplimark. URL: https://www.amplimark.com/benefits-of-using-a-multisite/ (дата звернення: 04.02.2024).
4. Мікросервісна архітектура для початківців. GlobalLogic. URL: https://www.globallogic.com/ua/insights/blogs/microservices-architecture-for-beginners-part-one/ (дата звернення: 04.02.2024).
5. Мікросервісна архітектура: плюси та мінуси. ITEDU Center. URL: https://itedu.center/ua/blog/articles/microservices-architecture-advantages-and-disadventages/ (дата звернення: 04.02.2024).
6. Мікросервісна архітектура: переваги та недоліки. Javarush. URL: https://javarush.com/ua/groups/posts/uk.2015.mkroservsna-arkhtektura-pljusi-ta-mnusi (дата звернення: 04.02.2024).
7. Мікросервіси та мікросервісна архітектура: сучасний підхід до розробки програмного забезпечення. Bizmag. URL: https://bizmag.com.ua/arkhitektura-mikroservisiv-dlia-biznesu/ (дата звернення: 04.05.2024).
8. Мікросервіси. Вікіпедія. URL: https://uk.wikipedia.org/wiki/Мікросервіси (дата звернення: 04.02.2024).
9. Multi-Site: Key Features and How To Choose The Right One. Sanity. URL: https://www.sanity.io/multi-site-cms (дата звернення: 05.02.2024).
10. What is WordPress Multisite?. HubSpot. URL: https://blog.hubspot.com/website/wordpress-multisite (дата звернення: 05.02.2024).
11. Multisite Drupal. Drupal. URL: https://www.drupal.org/docs/getting-started/multisite-drupal (дата звернення: 05.05.2024).
12. Magento. Вікіпедія. URL: https://uk.wikipedia.org/wiki/Magento (дата звернення: 05.05.2024).
13. Shopify та Shopify Plus. ADW Service. URL: https://adwservice.com.ua/uk/porivnjannja-shopify-ta-shopify-plus (дата звернення: 06.02.2024).
14. Стадії циклу розробки ПЗ. QALight. URL: https://qalight.ua/baza-znaniy/stadiyi-tsiklu-rozrobki-pz/ (дата звернення: 05.02.2024).
15. Мікросервісна архітектура ПЗ. QALight. URL: https://qalight.ua/baza-znaniy/shho-take-mikroservisna-arhitektura-pz/ (дата звернення: 05.05.2024).
16. Вимоги до мікросервісної архітектури. Medium. URL: https://medium.com/@IvanZmerzlyi/microservices-architecture-461687045b3d (дата звернення: 07.05.2024).
17. Kong: an open-source API gateway. Medium. URL: https://medium.com/@aryak.deshpande0512/kong-an-open-source-api-gateway-ffc91f474216 (дата звернення: 08.05.2024).
18. Мови програмування для веброзробки та супутні технології. Drukarnia. URL: https://drukarnia.com.ua/articles/movi-programuvannya-dlya-vebrozrobki-ta-suputni-tekhnologiyi-wzeAr (дата звернення: 08.05.2024).
19. Огляд переваг Laravel для веб-розробки. ASABIX. URL: https://asabix.com.ua/what-is-laravel/ (дата звернення: 08.05.2024).
20. Що таке Docker і навіщо він?. QA Group. URL: https://qagroup.com.ua/publications/shcho-take-docker-i-navishcho-vin/ (дата звернення: 08.05.2024).
21. NGINX: продуктивний і популярний веб-сервер. Brander. URL: https://brander.ua/technologies/nginx (дата звернення: 08.05.2024).
22. Percona Server. Вікіпедія. URL: https://uk.wikipedia.org/wiki/Percona_Server (дата звернення: 08.05.2024).
23. Загальна інформація про Redis. Ukraine hosting. URL: https://www.ukraine.com.ua/wiki/redis/overview/ (дата звернення: 18.05.2024).
24. Elasticsearch розробка швидкого пошуку і фільтрації. SEOTM Company. URL: https://www.seotm.com/ua/technologies/elasticsearch-rozrobka.html (дата звернення: 18.05.2024).
25. Kong Gateway. Kong Docs. URL: https://docs.konghq.com/gateway/latest/ (дата звернення: 18.05.2024).
26. Мікросервісна архітектура: основні концепції. Foxminded. URL: https://foxminded.ua/mikroservisna-arkhitektura/ (дата звернення: 18.05.2024).
27. Архітектура мікросервісів: Особливості. Hostzealot. URL: https://www.hostzealot.com.ua/blog/about-solutions/arxitektura-mikroservisiv-osoblivosti-perevagi-realni-prikladi (дата звернення: 25.05.2024).
28. MVC: шаблон проектування архітектури додатку. Brander. URL: https://brander.ua/technologies/mvc (дата звернення: 25.05.2024).
29. Розробка веб-додатків з використанням Laravel. Step2Dev. URL: https://step2.dev/uk/blog/laravel (дата звернення: 25.05.2024).
30. Мікросервіси та контейнери Docker. LiderBooks. URL: https://liderbooks.com.ua/ua/p1852830587-mikroservisy-kontejnery-docker.html (дата звернення: 25.05.2024).
31. Laradock. Laradock. URL: https://laradock.io/ (дата звернення: 25.05.2024).
32. Використання Postman в тестуванні. QATestLab. URL: https://training.qatestlab.com/blog/technical-articles/use-postman-in-testing/ (дата звернення: 26.04.2024).
33. Fryz M., Mlynko B. Property Analysis of Conditional Linear Random Process as a Mathematical Model of Cyclostationary Signal // 2nd International Workshop on Information Technologies: Theoretical and Applied Problems (ITTAP 2022). Ternopil, Ukraine: CEUR Workshop Proceedings, 2022. Vol. 3309. P. 77–82.
34. Fryz М., Mlynko B. Determination of the characteristic function of discrete-time conditional linear random process and its application // Sci. J. TNTU. 2023. Vol. 109, № 1. P. 16–23.
35. Fryz M., Mlynko B. Property analysis of multivariate conditional linear random processes in the problems of mathematical modelling of signals // Technol. Audit Prod. Reserv. 2022. Vol. 3, № 2(65). P. 29–32.
36. Фриз М.Є., Млинко Б.Б. Умовні лінійні випадкові процеси з дискретним часом та їх властивості // Вісник Хмельницького національного університету. Серія: Технічні науки. 2022 (309), № 3. С. 7–12.
37. Fryz M., Mlynko B. Properties of Stationarity and Cyclostationarity of Conditional Linear Random Processes // 2020 IEEE 15th International Conference on Advanced Trends in Radioelectronics, Telecommunications and Computer Engineering (TCSET). Lviv-Slavske, Ukraine: IEEE, 2020. P. 166–170.
38. Fryz M., Scherbak L., Mlynko B., Mykhailovych T. Linear Random Process Model-Based EEG Classification Using Machine Learning Techniques // Proceedings of the 1st International Workshop on Computer Information Technologies in Industry 4.0 (CITI 2023). Ternopil, Ukraine: CEUR Workshop Proceedings, 2023. Vol. 3468. P. 126–132.
39. Бабак В. П., Марченко Б. Г., Фриз М. Є. Теорія ймовірностей, випадкові процеси та математична статистика. К.: Техніка, 2004. 288 с.
40. ДСТУ 8604:2015 Дизайн і ергономіка. Робоче місце для виконання робіт у положенні сидячи. Національний стандарт України. URL: https://nau.edu.ua/site/variables/docs/science/ndi/dizain/0%A1%A2%D0%A3-D1%8F%D1%87%D0%B8.doc (дата звернення 26.05.2024).
41. Голінько В. І., Іконніков М. Ю., Лебедєв Я. Я. Охорона праці в галузі інформаційних технологій. Дніпропетровськ, Україна: Міністерство освіти і науки України, Національний гірничий університет. С. 246. ISBN 978-966-350-558-9.
Content type: Bachelor Thesis
�蝷箔����:122 — Компʼютерні науки (бакалаври)

��辣銝剔�﹝獢�:
獢�獢� ��膩 憭批���撘� 
2024_KRB_SNs-42_Boichuk_OA.pdf3,66 MBAdobe PDF璉�閫�/撘��


�DSpace銝剜�������★��������雿��.

蝞∠�極�