Microservices: Open Source Frameworks and Software Architecture

Microservices: Moderní softwarová architektura

Microservices: Moderní softwarová architektura

Pokračování s téma evoluce a změn paradigmat a pracovních metod došlo v oblasti vývoje softwaru, čehož jsme se nedávno dotkli v článcích s názvem „Vývoj softwaru: historický přehled až do současnosti“, „Interoperabilita prostřednictvím cloudu: Jak toho dosáhnout?“ y „XaaS: Cloud Computing - Vše jako služba“, dnes si povíme Mikroslužby.

Mikroslužby jsou moderní softwarová architektura, nikoli API (Application Programming Interface) nebo samotná technologie, kterou lze instalovat a používat. Softwarové architektury, známé také jako softwarové vzory, jsou programovacím jazykům zcela cizí, protože určují pouze způsob, jakým by technologie měly fungovat, a nikoli způsob jejich implementace.

Mikroslužby: Úvod

Úvod

Na mikroslužby lze pohlížet jako na vývoj architektury SOA (architektura orientovaná na služby), který vede vývojáře k vytváření modulárnějších aplikací, které jsou funkční a autonomní, s vysokou kapacitou, které lze efektivně znovu použít, jak je tomu obdobně, když optimalizujeme použití nějakého hardwaru, ve kterém Rozvíjí pouze to, co je skutečně nutné, místo toho, aby zbytečně rozvinul svůj plný potenciál.

Architektura mikroslužebv praxi se to nestalo tak rozšířeným jako teoreticky, to znamená, je známější než používáno. Mnoho vývojářů to však implementuje každý den, protože jde o model vývoje softwaru zlepšuje čas, výkonnost a stabilitu proměnných v projektech, kde se aplikuje. Kromě toho jeho jednoduchá přidružená škálovatelnost je obzvláště vhodný pro vývoj, kde je nezbytná kompatibilita mezi platformami (Web, Mobile, Wearables, IoT).

Microservices: Pracovní schéma

Ale zatímco SOA je architektura vyšší úrovně, tj. Architektura, kde jsou vytvářeny aplikace založené na službách, kde je služba nejmenší a nejfunkčnější jednotkou práce v rámci vytvořené aplikace, Architektura mikroslužeb také umožňuje nám vytvářet služby, ale tyto služby jsou navrženy velmi malým a konkrétním způsobem tak, aby splňovaly velmi přesnou a přesnou funkčnost, a to takovým způsobem, že je lze oddělit od zbytku aplikací a fungovat zcela autonomně od zbytku aplikace, kde byla vytvořena.

Mikroslužby: Co jsou zač a jaké jsou?

Co jsou softwarové architektury (vzory)?

Abychom dobře porozuměli softwarové architektuře mikroslužeb, je dobré vědět něco o všech nejznámějších existujících softwarových architekturách. Existuje mnoho existujících, jak je vidět na stránkách oodesign nebo jednoduše dovnitř Wikipedia, ale podle slavné knihy s názvem „Kniha vzorů“ (Kniha návrhových vzorů) stávající vzory lze klasifikovat jako:

Kreativní

Ti, kteří se zabývají způsoby vytváření instancí objektů a jejichž cílem je abstrahovat proces vytváření instancí a skrýt podrobnosti o tom, jak jsou objekty vytvářeny nebo inicializovány. V této třídě jsou následující:

  • Abstraktní továrna
  • Stavitel
  • Tovární metoda
  • Prototyp
  • Singleton

Strukturální

Ty, které popisují, jak lze kombinovat třídy a objekty (jednoduché nebo složené), aby vytvořily velké struktury a poskytly nové funkce. V této třídě jsou následující:

  • Adaptér
  • Bridge
  • Složený
  • Malířka
  • Fasáda
  • Muška
  • Zástupce

Chování

Ty, které nám pomáhají definovat komunikaci a iteraci mezi objekty systému. Účelem tohoto vzoru je snížit vazbu mezi objekty. V této třídě jsou následující:

  • Řetěz odpovědnosti
  • Příkaz
  • Tlumočník
  • Iterátor
  • Prostředník
  • Memento
  • Pozorovatel
  • Stát
  • Strategie
  • Metoda šablony
  • Návštěvník

ostatní

Předchozí návrhové vzory vyjadřovaly schémata, která definují konstrukční struktury, pomocí kterých lze budovat softwarové systémy. Ale když chceme lépe vyjádřit základní organizační a strukturální schéma vytvořených softwarových systémů, obvykle najdeme tuto jinou klasifikaci:

  • Břidlicová architektura
  • DAO: Objekt pro přístup k datům
  • DTO: Objekt přenosu dat
  • EDA: Architektura řízená událostmi
  • Implicitní vyvolání
  • Nahé předměty
  • Vrstvené programování
  • Peer-to-peer
  • Potrubí
  • SOA: Architektura orientovaná na služby
  • Tři úrovně

K dispozici je také „Model zobrazení ovladače“ který je dobře známý a používaný a je rozdělen na:

  • Model / Pohled / Řadič
  • Model / Pohled / Prezentátor
  • Model / View / Presenter s Model Presenter
  • Model / View / View-Model
  • Model / View / Presenter s pasivním zobrazením
  • Model / View / Presenter s kontrolerem

Být «Model View Controller» jeden z nejznámějších a dnes implementovaných, nestačí poskytnout požadované funkce podnikové aplikaci, a to je jeden z hlavních důvodů, proč Microservices Architecture nahrazuje Model-View-Controller (MVC).

Mikroslužby: výhody

Výhody architektury mikroslužeb

Když webová platforma využívá architekturu Microservices Architecture, má obvykle následující výhody:

  • vyřešit snadno každý problém nebo problém představený řešením každé malé mikroslužby zapojené do konkrétní situace.
  • Zmírnit Obecná nebo globální selhání služeb, protože když Microservice selže, neovlivní to ostatní, protože jsou zcela nezávislé.
  • Uklidnit se spuštění a začlenění úplných nebo specifických funkcí nebo služeb, protože každou Microservice lze přidávat nebo odebírat a aktualizovat samostatně a postupně.
  • Zlepšit se přístup k aplikacím nebo službám vytvořeným ze všech typů zařízení a platforem.
  • Zvýšení univerzálnost platformy, protože Microservices mohou být distribuovány na různých serverech a psány v různých jazycích.

Mikroslužby: rámce

Open Source Frameworks

existuje mnoho možnosti otevřeného zdroje které mohou vývojáři softwaru použít k vývoji řešení, která jsou součástí Microservices Architectures. Konkrétně pro Javu, která je k tomu široce používanou technologií, existují následující:

Mikroslužby: Weby

Webové příklady s architekturami mikroslužeb

Z velkého počtu webů, které poskytují rozsáhlé aplikační služby a postupně implementovaly architekturu Microservices Architecture za účelem zlepšení údržby a škálovatelnosti jejich služeb a platformy produktů, což je jednoduché, efektivní a rychlé, můžeme zmínit tři hlavní v oboru Co jsou:

  • Amazonka
  • Ebay
  • Netflix

Microservices: Závěr

Závěr

Je jasné že Mikroslužby významně přispívají k vývoji moderního webového softwaruAle také znamenají řešení mnoha nových výzev k řešení. Problémy, které nemusí mít co do činění pouze s rámcovým učením a efektivní prací, ale také s tím, jak se tento nový vývoj doplňuje a implementuje v IT odděleních, která je nakonec budou online a spravovat a budou hlasovat váha při konečném rozhodování o každém vývoji. Ale Tato architektura je tady a zůstala dlouho.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.