Система контейнеризації мікросервісів на базі Docker
Репозитарій Національного Авіаційного Університету
View Archive InfoField | Value | |
Title |
Система контейнеризації мікросервісів на базі Docker
|
|
Creator |
Синяговський, Олег Олександрович
|
|
Subject |
дипломна робота
мікросервіс docker кластеризація оркестрація мікросервісна архітектура моніторинг системи |
|
Description |
Робота публікується згідно наказу ректора від 29.12.2020 р. №580/од "Про розміщення кваліфікаційних робіт вищої освіти в репозиторії НАУ". Керівник проекту: д.т.н., професор Зіатдінов Юрій Кашафович Мікросервісна архітектура або мікросервіси – це метод розробки програмного забезпечення, за допомогою якого зосереджується увага на побудові однофункціональних модулів (сервісів) з чітко визначеними завданнями та операціями. Важливо розуміти, що під сервісом розуміється цілий набір послуг і визначений функціонал, який надають споживачеві. А мікросервіси – це дроблення функціоналу так, щоб він був легко замінюваним і доступним іншим частинам системи. Кожен мікросервіс – це невелика монолітна програма, яка виконує свою функцію. У програмний продукт при розробці за допомогою мікросервісної архітектури можна додавати будь-яку кількість нових мікросервісів, розширюючи його функціональність. Щоб домогтися подібного в монолітної програмі, необхідно вносити зміни в основний продукт. Мікросервісна архітектура – це створення розподілених додатків у вигляді набору невеликих незалежних сервісів, які окремо розробляються та розгортаються, і можуть запускатись як один або кілька ізольованих процесів. Додатковим плюсом використання мікросервісів для реалізації бізнес-функцій є їх однакова робота в різних системах. Наприклад, використовуючи в різних системах один і той же мікросервіс, що видає паспортні дані клієнта за запитом, всюди отримаємо ідентичний результат в однаковому вигляді. Це є гарантією стабільної якості роботи ПЗ. Переваги мікросервісів з точки зору розробки: • об’єм програмного коду є мінімальним – сервіс не повинен вимагати великої кількості людей для розробки. Одна команда може розробляти кілька сервісів; • слабка зв’язність – зміни в одному сервісі не впливають на інший; • модульність – кожен мікросервіс націлений на вирішення лише однієї групи задач; • висока доступність – якщо якась частина моноліту вийде з ладу – зламається весь додаток. У випадку із мікросервісами, не всі компоненти можуть працювати (на кшталт авторизація), але додаток при цьому залишиться доступним; • використання різноманітних технологій – при розробці кожного сервісу розробники вільні вибирати інструменти, які найкраще підійдуть для конкретної бізнес-логіки у даному сервісі. Наприклад, можна вибрати оптимальну базу даних і зручні інструменти для роботи з нею. Мікросервісна архітектура також дозволяє спробувати нову технологію на окремому сервісі, не переписуючи при цьому весь додаток. Недоліки мікросервісів з точки зору розробки: • складність розробки – розробка з використанням мікросервісів є довготривалим процесом, що не підходить, коли потрібне швидке рішення (прототип, невеликий додаток, стислі терміни); • складність підтримки – кожен мікросервіс потребує окремого обслуговування, тому потрібен постійний автоматизований моніторинг та логування даних. |
|
Date |
2021-01-13T12:12:19Z
2021-01-13T12:12:19Z 2020-12-24 |
|
Type |
Other
|
|
Identifier |
https://er.nau.edu.ua/handle/NAU/45194
|
|
Language |
uk
|
|
Format |
application/pdf
|
|
Publisher |
Національний авіаційний університет
|
|