Mikroslužby: Open Source rámce a softvérová architektúra

Mikroslužby: moderná softvérová architektúra

Mikroslužby: moderná softvérová architektúra

Pokračovanie s téma vývoja a zmien paradigiem a pracovných metód sa stalo v oblasti vývoja softvéru, ktorej sme sa nedávno dotkli v článkoch s názvom „Vývoj softvéru: historický prehľad do súčasnosti“, „Interoperabilita prostredníctvom cloudu: Ako to dosiahnuť?“ y „XaaS: Cloud Computing - všetko ako služba“, dnes si povieme Mikroslužby.

Mikroslužby sú modernou softvérovou architektúrou, nie API (Application Programming Interface) alebo samotná technológia, ktorú je možné nainštalovať a používať. Softvérové ​​architektúry, známe tiež ako softvérové ​​vzory, sú programovacím jazykom úplne cudzie, pretože iba určujú spôsob, akým by technológie mali fungovať, a nie spôsob ich implementácie.

Mikroslužby: Úvod

Úvod

Mikroslužby možno považovať za vývoj architektúry SOA (architektúra orientovaná na služby), ktorý vedie vývojárov k vytváraniu modulárnejších aplikácií, ktoré sú funkčné a autonómne, s vysokou kapacitou, ktoré sa dajú účinne znovu použiť, ako sa to deje podobným spôsobom, keď optimalizujeme použitie určitého hardvéru, v ktorom Rozvíja iba to, čo je skutočne nevyhnutné, namiesto toho, aby zbytočne rozvinul celý jeho potenciál.

Architektúra mikroslužieb, v praxi sa nerozšírila tak teoreticky, to znamená, je známejší ako používaný. Avšak každý deň viac ho implementuje veľa vývojárov, pretože ide o model vývoja softvéru Zlepšuje čas, výkonnosť a stabilitu premenných v projektoch, kde sa uplatňuje. Okrem toho jeho jednoduchá pridružená škálovateľnosť je zvlášť vhodný pre vývoj, kde je nevyhnutná kompatibilita medzi platformami (Web, Mobile, Wearables, IoT).

Mikroslužby: pracovná schéma

ale, zatiaľ čo SOA je architektúra vyššej úrovne, tj. Architektúra, kde sa vytvárajú aplikácie založené na službách, kde je služba najmenšou a najfunkčnejšou jednotkou práce v rámci vytvorenej aplikácie, Architektúra mikroslužieb tiež nám umožňuje vytvárať služby, ale tieto služby sú určené veľmi malým a konkrétnym spôsobom tak, aby spĺňali veľmi presnú a presnú funkčnosť, a to takým spôsobom, že je možné ich oddeliť od zvyšku aplikácií a fungovať úplne autonómne od zvyšku aplikácie, kde bola vytvorená.

Mikroslužby: Čo sú zač a čo sú zač?

Čo sú softvérové ​​architektúry (vzory)?

Aby ste dobre pochopili softvérovú architektúru mikroslužieb, je dobré vedieť niečo o všetkých najznámejších existujúcich softvérových architektúrach. Existuje veľa existujúcich, ako je vidieť na stránkach oodesign alebo jednoducho dovnútra Wikipedia, ale podľa slávnej knihy tzv «Kniha vzorov dizajnu» (Kniha návrhových vzorov) existujúce vzory možno klasifikovať ako:

Tvorivý

Tie, ktoré sa zaoberajú spôsobmi inštancie objektov, a ktorých cieľom je abstrahovať proces inštancie a skryť podrobnosti o spôsobe vytvárania alebo inicializácie objektov. V tejto triede sú tieto:

  • Abstraktná továreň
  • Staviteľ
  • Továrenská metóda
  • Prototyp
  • Singleton

Štrukturálne

Tie, ktoré popisujú, ako možno kombinovať triedy a objekty (jednoduché alebo zložené), aby vytvorili veľké štruktúry a poskytli nové funkcie. V tejto triede sú tieto:

  • adaptér
  • Mostík
  • Zložený
  • tapetár
  • fasáda
  • mušia váha
  • Zástupca

správanie

Tie, ktoré nám pomáhajú definovať komunikáciu a iteráciu medzi objektmi systému. Účelom tohto vzoru je znížiť väzbu medzi objektmi. V tejto triede sú tieto:

  • Reťaz zodpovednosti
  • povel
  • Tlmočník
  • iterátor
  • prostredník
  • Memento
  • hodinky
  • stáť
  • Stratégia
  • Metóda šablóny
  • návštevník

Iné

Predchádzajúce návrhové vzory vyjadrili schémy, ktoré definujú návrhové štruktúry, pomocou ktorých je možné budovať softvérové ​​systémy. Ale keď chceme lepšie vyjadriť základnú organizačnú a štrukturálnu schému pre vytvorené softvérové ​​systémy, zvyčajne nájdeme túto inú klasifikáciu:

  • Bridlicová architektúra
  • DAO: objekt prístupu k údajom
  • DTO: Objekt prenosu údajov
  • EDA: Architektúra riadená udalosťami
  • Implicitné vyvolanie
  • Nahé predmety
  • Vrstvené programovanie
  • Peer-to-peer
  • Potrubie
  • SOA: Architektúra orientovaná na služby
  • Tri úrovne

K dispozícii je tiež „Model zobrazenia radiča“ ktorý je dobre známy a používaný a je rozdelený na:

  • Model / Pohľad / Ovládač
  • Model / Pohľad / Prezentátor
  • Model / View / Presenter s Model Presenter
  • Model / View / View-Model
  • Model / View / Presenter s pasívnym zobrazením
  • Model / View / Presenter s kontrolórom

bytia „Controller View Model“ jeden z najznámejších a implementovaných v súčasnosti, je nedostatočné na zabezpečenie požadovaných funkcií podnikovej aplikácie, a to je jeden z hlavných dôvodov, prečo architektúra Microservices nahrádza Model-View-Controller (MVC).

Mikroslužby: výhody

Výhody architektúry mikroslužieb

Keď webová platforma využíva architektúru Microservices Architecture, má zvyčajne nasledujúce výhody:

  • resolver Ľahko každý problém alebo problém prezentovaný riešením každej malej mikroslužby zapojenej do konkrétnej situácie.
  • Zmierniť Všeobecné alebo globálne zlyhania služieb, pretože keď zlyhá Microservice, nebude to mať vplyv na ostatných, pretože sú úplne nezávislé.
  • Zmierniť spustenie a začlenenie kompletných alebo špecifických funkcií alebo služieb, pretože každú Microservice je možné pridávať alebo odoberať a aktualizovať osobitne a postupne.
  • Aby sa zlepšilo prístup k aplikáciám alebo službám vytvoreným zo všetkých typov zariadení a platforiem.
  • Aumentar univerzálnosť platformy, pretože Microservices môžu byť distribuované na rôznych serveroch a písané v rôznych jazykoch.

Mikroslužby: rámce

Open source rámce

existuje veľa možnosti otvoreného zdroja ktoré môžu vývojári softvéru použiť na vývoj riešení, ktoré sú súčasťou Microservices Architectures. Konkrétne pre Javu, ktorá je na tento účel veľmi používanou technológiou, existujú nasledujúce:

Mikroslužby: weby

Príklady webu s architektúrami Microservices

Z veľkého počtu webových stránok, ktoré poskytujú rozsiahle aplikačné služby a postupne implementovali architektúru Microservices Architecture s cieľom zlepšiť údržbu a škálovateľnosť svojej platformy služieb a produktov, čo je jednoduché, efektívne a rýchle, môžeme spomenúť tri hlavné v odbore. Čo sú zač:

  • Amazonka
  • Ebay
  • Netflix

Mikroslužby: záver

Záver

Je jasné že Mikroslužby veľmi prispievajú k vývoju moderného webového softvéruZnamená to však tiež riešenie mnohých nových výziev, ktoré treba vyriešiť. Problémy, ktoré nesúvisia iba s učením a efektívnou prácou rámca, ale aj s tým, ako sa tento nový vývoj dopĺňa a implementuje v IT oddeleniach, ktoré ich nakoniec dajú online a spravujú, a majú hlas za váha pri konečných rozhodnutiach o každom vývoji. ale Táto architektúra je tu a zostala na dlho.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.