Микросервиси: Оквири отвореног кода и архитектура софтвера

Микросервиси: савремена софтверска архитектура

Микросервиси: савремена софтверска архитектура

Настављајући са тема еволуције и промена у парадигмама и методама рада догодило у области развоја софтвера, чега смо се недавно дотакли у чланцима под називом „Развој софтвера: Историјски преглед до данас“, „Интероперабилност кроз облак: како то постићи?“ y „КсааС: Рачунарство у облаку - све као услуга“, данас ћемо разговарати о Микросервиси.

Микросервиси су модерна софтверска архитектура, а не АПИ (Апплицатион Программинг Интерфаце) или сама технологија која се може инсталирати и користити. Софтверске архитектуре, такође познате и као софтверски обрасци, потпуно су непознате програмским језицима, јер они само утврђују начин на који технологије треба да раде, а не како се оне примењују.

Микросервиси: Увод

Увод

Микросервиси се могу сматрати еволуцијом СОА архитектуре (Сервице-Ориентед Арцхитецтуре), који води програмере да креирају више модуларних апликација, које су функционалне и аутономне, са великим капацитетом за поновну употребу на ефикасан начин, као што се то ради на сличан начин, када оптимизујемо употребу одређеног хардвера, у коме Открива само оно што је заиста неопходно, уместо да непотребно раскрије свој пуни потенцијал.

Архитектура микросервиса, у пракси није постао толико раширен као у теорији, тј. познатија је него употребљена. Међутим, сваког дана више, многи програмери га примењују јер је то модел за развој софтвера Побољшава време, перформансе и стабилност променљивих у пројектима на којима се примењује. Осим тога, његова једноставна придружена скалабилност чини га посебно погодним у развоју где је компатибилност више платформи (Веб, Мобиле, Веараблес, ИоТ) од суштинске важности.

Микросервиси: шема рада

Али, док је СОА архитектура вишег нивоа, односно Архитектура у којој се граде апликације засноване на услугама, где је услуга најмања и најфункционалнија јединица рада унутар креиране апликације, Мицросервицес Арцхитецтуре такође омогућава нам стварање услуга, али ове услуге су дизајниране на врло мали и специфичан начин тако да испуњавају врло прецизну и тачну функционалност, на такав начин да се могу одвојити од осталих апликација и функционисати на потпуно аутономан начин од остатка апликације у којој је створена.

Микросервиси: Шта су они и шта су?

Шта су софтверске архитектуре (обрасци)?

Да бисмо добро разумели софтверску архитектуру микросервиса, добро је знати мало о свим најпознатијим постојећим софтверским архитектурама. Постоји много постојећих, као што се може видети на сајту Оодесигн или једноставно у Википедија, али према познатој књизи тзв „Књига о дизајну узорака“ (Књига о узорцима дизајна) постојећи обрасци се могу класификовати као:

Креативни

Они који се баве начинима инстанцирања објеката и чији је циљ апстраховање процеса инстанцирања и сакривање детаља о начину стварања или иницијализације објеката. У овој класи су следећи:

  • Апстрактна фабрика
  • Градитељ
  • Фабричка метода
  • Прототип
  • једна ствар

Структурни

Они који описују како класе и објекти (једноставни или сложени) могу да се комбинују у велике структуре и пружају нове функционалности. У овој класи су следећи:

  • Адаптер
  • Бриџ
  • Мешавина
  • Декоратер
  • Фацаде
  • Фливеигхт
  • заступник

Понашање

Они који нам помажу да дефинишемо комуникацију и итерацију између објеката система. Сврха овог обрасца је да смањи спрегу између предмета. У овој класи су следећи:

  • Ланац одговорности
  • команда
  • Преводилац
  • Итератор
  • посредник
  • Успомена
  • Посматрати
  • Држава
  • Стратегија
  • Метода предлошка
  • Посетилац

други

Претходни обрасци дизајна изражавали су шеме које дефинишу структуре дизајна помоћу којих се граде софтверски системи. Али када желимо боље да изразимо основну организациону и структурну шему створених софтверских система, обично налазимо следећу класификацију:

  • Архитектура шкриљевца
  • ДАО: Објекат приступа подацима
  • ДТО: Објекат за пренос података
  • ЕДА: Архитектура вођена догађајима
  • Имплицитно позивање
  • Голи предмети
  • Слојевито програмирање
  • Пеер-то-пеер
  • Цевовод
  • СОА: Услужно оријентисана архитектура
  • Три нивоа

Ту је и „Модел приказа контролера“ који је добро познат и користи се и дели се на:

  • Модел / Поглед / Контролер
  • Модел / Виев / Пресентер
  • Модел / Поглед / Презентер са Модел Пресентер
  • Модел / Поглед / Поглед-Модел
  • Модел / Виев / Пресентер са пасивним приказом
  • Модел / Виев / Пресентер са Супервисор Цонтроллер

Бити „Модел приказа контролера“ један од најпознатијих и данас примењивих, недовољно је пружити потребне функционалности корпоративној апликацији, и ово је један од главних разлога зашто, архитектура Мицросервицес замењује Модел-Виев-Цонтроллер (МВЦ).

Микросервиси: Предности

Предности архитектуре микросервиса

Када веб платформа користи архитектуру микросервиса, она обично има следеће предности:

  • Ресолвер лако представити сваки проблем или проблем обраћајући се малим микросервисима који су укључени у одређену ситуацију.
  • Ублажити Општи или глобални кварови услуга, јер када Мицросервице пропадне, то не утиче на остале, јер су потпуно независне.
  • Олакшати покретање и уврштавање комплетних или специфичних функционалности или услуга, јер се свака микросервис може додавати или уклањати и ажурирати одвојено и поступно.
  • Бити боље приступ апликацијама или услугама креираним са свих врста уређаја и платформи.
  • Аументар свестраност платформе, јер се Мицросервицес могу дистрибуирати на различитим серверима и писати на различитим језицима.

Микросервиси: Оквири

Опен Соурце Фрамеворкс

Има их много опције отвореног кода које програмери софтвера могу користити за развој решења која су део Мицросервицес Арцхитецтуре. Конкретно за Јаву, која је за то широко коришћена технологија, постоје следеће:

Микросервиси: мреже

Веб примери са архитектурама микросервиса

Међу великим бројем веб локација које пружају велике апликативне услуге и које су прогресивно имплементирале Мицросервицес Арцхитецтуре како би побољшале одржавање и скалабилност платформе својих услуга и производа, чинећи је једноставном, ефикасном и брзом, можемо споменути три главна у индустрији Шта су они:

  • амазонка
  • Ебаи
  • Нетфлик

Микросервиси: Закључак

Закључак

Јасно је да Микросервиси много доприносе савременом развоју софтвера заснованом на ИнтернетуАли они такође значе решавање многих нових изазова које треба решити. Проблеми који не само да имају везе са оквирним учењем и ефикасним радом, већ и како се ови нови догађаји допуњују и примењују у ИТ одељењима, који су на крају они који их стављају на мрежу и управљају њима и имају глас тежина у коначним одлукама о сваком развоју. Али Ова Архитектура је овде и дуго је остала.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.