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

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

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

Продължавайки с темата за еволюцията и промените в парадигмите и методите на работа се случи в областта на разработването на софтуер, което наскоро засегнахме в статиите, наречени „Разработка на софтуер: Исторически преглед до наши дни“, „Оперативна съвместимост чрез облака: Как да го постигнем?“ y „XaaS: Облачни изчисления - всичко като услуга“, днес ще говорим за Микроуслуги.

Микроуслугите са модерна софтуерна архитектура, а не API (Приложен програмен интерфейс) или самата технология, която може да бъде инсталирана и използвана. Софтуерните архитектури, известни още като софтуерни модели, са напълно чужди на езиците за програмиране, тъй като те установяват само начина, по който трябва да работят технологиите, а не как те се прилагат.

Микроуслуги: Въведение

Въвеждане

Микроуслугите могат да се разглеждат като еволюция на архитектурата SOA (архитектура, ориентирана към услуги), което насочва разработчиците да създават по-модулни приложения, които са функционални и автономни, с голям капацитет за повторна употреба по ефективен начин, както се прави по подобен начин, когато оптимизираме използването на някои хардуер, в който Той се разгръща само това, което е наистина необходимо, вместо да разгърне ненужно целия му потенциал.

Архитектурата на микроуслугите, на практика той не е станал толкова широко разпространен, колкото на теория, т.е. тя е по-известна, отколкото използвана. Въпреки това, всеки ден повече, много разработчици го прилагат, защото това е модел за разработване на софтуер Подобрява времето, производителността и стабилността на променливите в проектите, където се прилага. Освен това неговата проста свързана мащабируемост го прави особено подходящ в разработки, при които съвместимостта на различни платформи (Web, Mobile, Wearables, IoT) е от съществено значение.

Микроуслуги: Работна схема

но, докато SOA е архитектура от по-високо ниво, тоест Архитектура, където се изграждат приложения, базирани на услуги, където услугата е най-малката и функционална единица работа в рамките на създадено приложение, Архитектура на микроуслуги Tambien ни позволява да създаваме услуги, но тези услуги са предназначени по много малък и специфичен начин така че да изпълняват много точна и точна функционалност, по такъв начин, че да могат да бъдат отделени от останалите приложения и да функционират напълно автономно от останалата част от приложението, където е създадено.

Микроуслуги: какви са те и какви са?

Какво представляват софтуерните архитектури (модели)?

За да разберете добре софтуерната архитектура на микроуслугите, е добре да знаете малко за всички най-известни съществуващи софтуерни архитектури. Съществуват много съществуващи, както може да се види на сайта на Одизайн или просто в Уикипедия, но според известната книга, наречена "Книга за дизайн на шаблони" (Книга за дизайнерски модели) съществуващите модели могат да бъдат класифицирани като:

Творчески

Тези, които се занимават с начини за създаване на екземпляри на обекти и чиято цел е да абстрахират процеса на създаване на инстанции и да скрият подробностите за това как обектите се създават или инициализират. В този клас са следните:

  • Абстрактна фабрика
  • Строител
  • Фабричен метод
  • Прототип
  • сек

Структурни

Тези, които описват как класовете и обектите (прости или сложни) могат да се комбинират, за да образуват големи структури и да предоставят нови функционалности. В този клас са следните:

  • Адаптер
  • Мост
  • Комбиниран
  • декоратор
  • Фасада
  • Муха
  • пълномощник

поведение

Тези, които ни помагат да определим комуникацията и итерацията между обектите на системата. Целта на този модел е да намали връзката между обектите. В този клас са следните:

  • Верига от отговорност
  • Команда
  • преводач
  • Итератор
  • посредник
  • Спомен
  • Наблюдател
  • Област
  • Стратегия
  • Шаблонен метод
  • Посетител

други

Предишните дизайнерски модели изразяват схеми, които определят дизайнерските структури, с които да се изграждат софтуерни системи. Но когато искаме да изразим по-добре фундаментална организационна и структурна схема за създадените софтуерни системи, обикновено намираме тази друга класификация:

  • Шиферна архитектура
  • DAO: Обект за достъп до данни
  • DTO: Обект за трансфер на данни
  • EDA: Архитектура, управлявана от събития
  • Неявно извикване
  • Голи предмети
  • Слоесто програмиране
  • Пеер към партньорската
  • Тръбопровод
  • SOA: Архитектура, ориентирана към услуги
  • Три нива

Има и „Модел на изгледа на контролера“ което е добре известно и използвано и се разделя на:

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

същество „Controller View Model“ един от най-известните и внедрени днес, е недостатъчно да се осигурят необходимите функционалности на корпоративно приложение и това е една от основните причини, Архитектурата на Microservices заменя Model-View-Controller (MVC).

Микроуслуги: Предимства

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

Когато дадена уеб платформа използва архитектурата на Microservices, тя обикновено има следните предимства:

  • за преобразуване лесно всеки проблем или проблем, представен чрез адресиране на всяка малка микрослужба, участваща в конкретна ситуация.
  • За смекчаване Общи или глобални откази на услугите, тъй като когато дадена микрослужба се провали, това не засяга останалите, тъй като те са напълно независими.
  • Успокоявам стартирането и включването на пълни или специфични функционалности или услуги, тъй като всяка Microservice може да бъде добавена или премахната и актуализирана отделно и постепенно.
  • Да се ​​оправи достъп до приложения или услуги, създадени от всички видове устройства и платформи.
  • увеличаване гъвкавостта на платформата, тъй като Microservices могат да се разпространяват на различни сървъри и да се пишат на различни езици.

Микроуслуги: Рамки

Рамки с отворен код

има много опции с отворен код които разработчиците на софтуер могат да използват за разработване на решения, които са част от архитектурите на Microservices. По-специално за Java, която е широко използвана технология за това, има следното:

Микроуслуги: Мрежи

Мрежови примери с архитектури на Microservices

Сред големия брой уебсайтове, които предоставят широкомащабни услуги за приложения и постепенно са внедрили архитектурата на Microservices, за да подобрят поддръжката и мащабируемостта на платформата си за услуги и продукти, правейки я проста, ефективна и бърза, можем да споменем три основни в индустрията Какво са те:

  • Амазонка
  • Ebay
  • Netflix

Микроуслуги: Заключение

Заключение

Ясно е, че Микроуслугите допринасят много за модерната уеб-базирана разработка на софтуерНо те също така означават справяне с много нови предизвикателства, които трябва да бъдат решени. Проблеми, които са свързани не само с рамковото обучение и ефективна работа, но и с това как тези нови разработки се допълват и внедряват в ИТ отделите, които в крайна сметка са тези, които ги пускат онлайн и управляват и имат глас при окончателни решения за всяко развитие. Но Тази Архитектура е тук и е дошла да остане за дълго време.


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

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.