FaaS як шаблон архітектури додатків
Вантажиться...
Дата
2020
Науковий керівник
Назва журналу
Номер ISSN
Назва тому
Видавець
КПІ ім. Ігоря Сікорського
Анотація
Робота складається зі вступу та п’яти розділів. Загальний обсяг роботи:
146 аркушів основного тексту, 60 ілюстрації, 24 таблиць. При підготовці
використовувалась література з 26 джерел.
Актуальність. З появою хмарних провайдерів поступово відбувається
перехід від монолітної архітектури додатків до класичної мікросервісної, що
зумовлено потребами автоматичного масштабуванням і зручністю розробки. З
появою FaaS сервісу від AWS у 2014році безсерверні обчислення вийшли в
тренд у побудові додатків у хмарі. Завдяки таким можливостям, як повна
відсутність в необхідності конфігурації інфраструктурного шару додатку, авто-
масштабованість і оплата на вимогу роблять безсерверні обчислення
привабливими як архітектура хмарних додатків.
Тому дослідження архітектурних шаблонів serverless додатків є
актуальною темою, оскільки вибір правильної архітектури додатку є
найголовнішою задачею при розробці.
Мета і завдання дослідження. Метою даної магістерської роботи є
дослідження архітектурних патернів побудови FaaS додатків. А саме:
- аналіз і порівняння шаблонів побудови додатків і засобів їх реалізації
від популярних FaaS провайдерів та вибір послуг одного з
провайдерів для подальшого дослідження (було вибрано AWS);
- реалізація одного з найбільш розповсюджених безсерверних
шаблонів від вибраного провайдера (було взято патерн FaaS “Simple
Web Service”) і порівняння її за виділеними критеріями з
аналогічною реалізацією у вигляді класичної мікросервісної
серверної архітектури.
- узагальнення результатів досліджень і формулювання загальних
рекомендацій щодо вибору послуг певного провайдера і архітектури
побудови додатку в залежності від вимог до додатку.
Об’єкт дослідження — архітектурні шаблони, які використовуються
для побудови serverless додатків.
Предмет дослідження — дві реалізації типового додатка у AWS: на
FaaS архітектурі і на класичній мікросервісній архітектурі, з подальшим
порівнянням їх перевагах, недоліків і визначенням умов найкращого
застосування кожного рішення.
Для розробки додатків використовувались сервіси від хмарного
провайдера AWS. FaaS архітектура була побудована на сервісіх AWS Lambda і
API Gateway. Класична мікросервісна архітектура на Docker контейнерах була
розміщена у сервісі Elastic Container Service з використанням Application Load
Balancer.
Методи дослідження. Для вирішення поставлених задач в роботі було
застосовано методи аналізу та синтезу, порівняння та узагальнення отриманих
результатів.
Наукова новизна отриманих результатів роботи полягає у наступному:
1 Проведено порівняльний аналіз за виділеними критеріями відомих
FaaS сервісів від хмарних провайдерів: AWS Lambda, Microsoft Azure
Functions і Google Cloud Functions.
2 Запропоновано методи прискорення роботи додатків, розроблених на
FaaS архітектурі у AWS.
3 Проведено порівняння реалізацій додатка на серверній і безсерверній
архітектурі у AWS за виділеними критеріями. Визначені недоліки,
переваги і умови найкращого застосування кожного варіанту.
Практична цінність. Отримані результати порівняння хмарних
провайдерів можуть бути використані для вибору провайдера під час розробки
додатку, в залежності від необхідних вимог. Також проаналізовані архітектурні
шаблони можуть бути використані на початку моделювання системи в
залежності від типу додатку. Результати порівняння розроблених реалізацій
додатка можуть бути використані в якості рекомендацій при виборі архітектури
для реалізації додатка: переваги та недоліки безсерверної і класичної
мікросервісної архітектури, для яких типів додатків краще підходить певна
архітектура.
Опис
Ключові слова
мікросервісна архітектура, FaaS, AWS Lambda, Elastic Container Service, serverless, microservice architecture
Бібліографічний опис
Плотніков, С. О. FaaS як шаблон архітектури додатків : магістерська дис. : 122 Комп’ютерні науки / Плотніков Сергій Олександрович. – Київ, 2020. – 146 с.