Teknologian jakaminen

Spring Cloud Alibaba - Sentinel hajautetun järjestelmän liikenteen vartija

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Lisää kuvan kuvaus tähän

Yleiskatsaus

Mikropalvelujen yleistyessä vakaus palveluiden ja palveluiden välillä tulee yhä tärkeämmäksi. Sentinel on liikenteenhallintakomponentti hajautettuun, monikieliseen heterogeeniseen palveluarkkitehtuuriin. Se käyttää liikennettä pääosin sisääntulopisteenä, joka kattaa liikenteen reitityksen, liikenteenohjauksen, liikenteen muotoilun, katkaisijan heikkenemisen, järjestelmän mukautuvan ylikuormitussuojauksen, hot spot -liikenteen suojauksen jne. Mittaus, joka auttaa kehittäjiä varmistamaan mikropalvelujen vakauden.

Lyhyesti sanottuna Sentinel on liikenteenhallintakomponentti, joka vastaa Spring Cloud Circurk Breakeria.

ominaisuus

  • Monipuoliset sovellusskenaariot: Sentinel on ottanut haltuunsa Alibaban Double Eleven -liikenteen edistämisen ydinskenaariot viimeisten 10 vuoden aikana, kuten flash-myynnit (eli sarjaliikennettä ohjataan järjestelmän kapasiteetin kestävillä rajoilla), viestihuippujen parranajo ja laakson täyttö, ja klusteriliikenteen ohjaus, loppupään käytettävissä olevien sovellusten reaaliaikainen yhdistäminen jne.
  • Täydellinen reaaliaikainen valvonta: Sentinel tarjoaa myös reaaliaikaisia ​​valvontatoimintoja. Näet konsolissa yksittäisen sovellukseen yhdistetyn koneen toisen tason tiedot ja jopa alle 500 koneen klusterin toimintatilan yhteenvedon.
  • Laaja avoimen lähdekoodin ekosysteemi: Sentinel tarjoaa valmiita integrointimoduuleja muiden avoimen lähdekoodin kehysten/kirjastojen kanssa, kuten integroinnin Spring Cloudin, Apache Dubbon, gRPC:n ja Quarkuksen kanssa. Sinun tarvitsee vain ottaa käyttöön vastaavat riippuvuudet ja suorittaa yksinkertainen konfigurointi muodostaaksesi nopean yhteyden Sentineliin. Samaan aikaan Sentinel tarjoaa alkuperäisiä toteutuksia useilla kielillä, kuten Java/Go/C.
  • Täydellinen SPI-laajennusmekanismi: Sentinel tarjoaa helppokäyttöisen, täydellisen SPI-laajennusliittymän. Voit mukauttaa logiikkaa nopeasti ottamalla käyttöön laajennusrajapintoja. Esimerkiksi mukautettu sääntöjen hallinta, dynaamisten tietolähteiden mukauttaminen jne.

Sentinelin pääominaisuudet:
Lisää kuvan kuvaus tähän

peruskonsepti

resurssi

Resurssit ovat keskeinen käsite Sentinelissä. Se voi olla mikä tahansa Java-sovelluksen sisällä, kuten sovelluksen tai muun sovelluksen kutsuman sovelluksen tarjoama palvelu tai jopa koodinpätkä. Seuraavassa dokumentaatiossa käytämme resursseja koodilohkojen kuvaamiseen.

Niin kauan kuin Sentinel API:n kautta määritetty koodi on resurssi, Sentinel voi suojata sen. Useimmissa tapauksissa voit käyttää menetelmän allekirjoituksia, URL-osoitteita tai jopa palvelun nimiä resurssien nimissä resurssien tunnistamiseen.

sääntö
Resurssien reaaliaikaisen tilan ympärille asetettuihin sääntöihin voi kuulua vuonohjaussääntöjä, katkaisijan huononemissääntöjä ja järjestelmän suojaussääntöjä. Kaikkia sääntöjä voidaan säätää dynaamisesti reaaliajassa. (Säännöt voidaan asettaa Sentinel-konsolissa, yml-kokoonpanossa ja java-koodissa)

Asenna Sentinel

Sentinelin käyttö voidaan jakaa kahteen osaan:

  • Ydinkirjasto (Java-asiakas): ei riipu mistään viitekehyksestä/kirjastosta ja voi toimia Java 8 ja uudemmatversio ajonaikaisesta ympäristöstä, ja sillä on myös hyvä tuki kehyksille, kuten Dubbo/Spring Cloud.
  • Dashboard: Dashboard vastaa pääasiassa push-sääntöjen hallinnasta, valvonnasta ja konetietojen hallinnasta.

Latauspolku:https://github.com/alibaba/Sentinel/releases

Etsi lataamisen jälkeen jar-paketti ja käynnistä Sentinel-konsoli suorittamalla komento.

java -jar sentinel-dashboard-xxx.jar

Paikallisessa ympäristössä on oltava versio jdk8 tai uudempi, ja portti 8080 ei ole varattu (Sentinel-konsolin portti)
Sentinel 1.6.0:sta alkaen Sentinel-konsoli sisältää peruskirjautumistoiminnot. Oletuskäyttäjätunnus ja salasana ovat molemmat Access URL: http://localhost:8080
Lisää kuvan kuvaus tähän

Tapaus Sentinelin tuomisesta mikropalveluihin

Luo uusi mikropalvelu, ota käyttöön Nacos ja Sentinel, rekisteröi palvelu Nacosiin ja suorita liikenteen valvonta, katkaisija ja aleneminen palvelussa.

Ota käyttöön riippuvuuksia