Arhitectura de microservicii este o arhitectură orientată spre servicii. În arhitectura de microservicii, există un număr mare de microservicii . Combinând toate microserviciile, se construiește un serviciu mare. În arhitectura microserviciilor, toate serviciile comunică între ele.
În Microservicii tutorial, vom înțelege cum să implementăm microservicii folosind Nor de primăvară . Vom învăța cum să stabilim comunicarea între microservicii, permite echilibrarea sarcinii , extinderea și reducerea microserviciilor . Vom învăța și noi centraliza configurarea microserviciilor cu Spring Cloud Config Server . Vom implementa Eureka Naming Server și Urmărire distribuită cu Detectivul norilor de primăvară și Zipkin . Vom crea microservicii cu toleranță la erori Zipkin .
Al nostru microservicii tutorial discută funcționalitățile de bază ale Arhitectura de microservicii împreună cu exemple relevante pentru o înțelegere ușoară.
Ce sunt microserviciile
Definiție : Conform Sam Newman , „Microserviciile sunt serviciile mici care lucrează împreună”.
Conform James Lewis și Martin Fowler , „Stilul arhitectural de microservicii este o abordare pentru dezvoltarea unei singure aplicații ca o suită de servicii mici. Fiecare microserviciu își rulează procesul și comunică cu mecanisme ușoare. Aceste servicii sunt construite în jurul capabilităților de afaceri și dezvoltate independent de mașini de implementare complet automatizate.
Există un minim de gestionare centralizată a acestor servicii, care pot fi scrise în limbaje de programare diferite și pot utiliza tehnologii diferite de stocare a datelor.
c matrice de șiruri
Puncte de reținut
- Acestea sunt serviciile care sunt expuse de REST.
- Acestea sunt mici unități dislocabile bine alese.
- Serviciile trebuie să fie activate pentru cloud.
Microserviciul definește o abordare a arhitecturii care împarte o aplicație într-un grup de servicii slab cuplate care implementează cerințele de afaceri. Este langa Arhitectură orientată spre servicii (SOA) . Cea mai importantă caracteristică a arhitecturii bazate pe microservicii este că poate funcționa livrare continuă a unei aplicaţii mari şi complexe.
Microservice ajută la distrugerea aplicației și la construirea unor aplicații mai mici independente din punct de vedere logic. De exemplu, putem construi o aplicație cloud cu ajutorul Amazon AWS cu eforturi minime.
În figura de mai sus, fiecare microserviciu are propriul strat de afaceri și bază de date. Dacă ne schimbăm într-un microserviciu, acesta nu afectează celelalte servicii. Aceste servicii comunică între ele folosind protocoale ușoare, cum ar fi HTTP sau REST sau protocoale de mesagerie.
Principiile microserviciilor
Există următoarele principii ale microserviciilor:
- Principiul responsabilității unice
- Modelat în jurul domeniului de afaceri
- Eșecul de izolare
- Automatizarea infrastructurii
- Implementați independent
Principiul responsabilității unice
Principiul responsabilității unice prevede că o clasă sau un modul dintr-un program ar trebui să aibă o singură responsabilitate. Orice microserviciu nu poate servi mai mult de o responsabilitate, la un moment dat.
Modelat în jurul domeniului de afaceri
Microserviciul nu se limitează niciodată să accepte tehnologia stivă sau baze de date adecvate. Stiva sau baza de date este cea mai potrivită pentru rezolvarea scopului de afaceri.
Eșec izolat
Aplicația mare poate rămâne în mare parte neafectată de defecțiunea unui singur modul. Este posibil ca un serviciu să eșueze în orice moment. Deci, este important să detectați rapid defecțiunea, dacă este posibil, să restabiliți automat eșecul.
Automatizarea infrastructurii
Automatizarea infrastructurii este procesul de scriptare a mediilor. Cu ajutorul mediului de scripting, putem aplica aceeași configurație unui singur nod sau mii de noduri. Este, de asemenea, cunoscut sub numele de management de configurare, infrastructuri scriptate și management de configurare a sistemului.
șiruri de caractere java
Implementați independent
Microserviciile sunt independente de platformă. Înseamnă că le putem proiecta și implementa independent, fără a afecta celelalte servicii.
Public
Tutorialul nostru de microservicii este conceput pentru profesioniștii în software și începătorii care doresc să învețe arhitectura microserviciilor în pași simpli. Acest tutorial vă va oferi o cunoaștere aprofundată a arhitecturii microserviciilor și a componentelor acesteia, cum ar fi RabbitMQ Server, Eureka Naming Server, Zuul API Gateway, Ribbon, Hystrix, și Serverul Zipkin . După finalizarea acestui tutorial, puteți dezvolta servicii de microservicii cu Nor de primăvară .
Cerințe preliminare
Înainte de a continua cu acest tutorial, ar trebui să aveți o înțelegere de bază Java , Arc, și Nor de primăvară Cadru. Pentru că vom dezvolta microservicii folosind Spring Cloud.
Problemă
Vă asigurăm că nu veți găsi nicio problemă cu tutorialul de microservicii. Dacă există vreo greșeală, vă rugăm să postați problema în formularul de contact.