Az internetes projektek fejlesztése során szükséges különböző szolgáltatásokkal való interakcióba lépni, és a felhasználók adatokat szereznek a szerverről, és a szolgáltatási interfészek magas elérhetősége különösen fontos, különösen az e-kereskedelmi és fizetési rendszerekben, ahol a magas elérhetőség azt is méri, hogy a rendszer robusztust érdemes-e. Klaszterek esetében sok szolgáltatás szintén nehezen fenntartható.
Konzuli értékelés
A Consul egy nyílt forráskódú eszköz, amelyet a HashiCorp indított el Go nyelven, és amelyet szolgáltatás felfedezésére és konfigurálására használnak elosztott rendszereket, beépített szolgáltatásregisztrációs és felfedezési keretrendszerrel, terjesztési konzisztencia protokoll megvalósításával, egészségügyi ellenőrzéssel, kulcs/érték tárolással és több adatközpontos megoldásokkal, amelyek viszonylag egyszerű használatúak.
Konzuli szolgálati felfedezés
Hogyan használjuk a Consul Service Discovery-t:
- Indíts egy Konzul ügynököt kliens módban minden számítógépen, amely csak a legfrissebb regisztrációs információk hatékony cseréjéért felelős a Konzul Klaszterrel (nem vesz részt a vezetőválasztáson).
- A szolgáltatás minden számítógépen regisztrálja a szolgáltatás nevét és URL-jét a helyi konzuli ügynöknél
- Amikor egy Computer1-en telepített programnak hívnia kell a ServiceB-t, a ServiceA program közvetlenül megkapja a ServiceB hozzáférési címét a helyi konzulügynöktől a szolgáltatásnéven keresztül, majd közvetlenül kéri a ServiceB URL-jét.
A kódex a következő:
A Startup osztályban a következőképpen hívják:
Egészségügyi vizsgálat
Az egészségügyi ellenőrzési felületnek csak egy 200-as státuszkódot kell visszaküldnie a konzulnak, és a kód a következő:
Indítsd el a projektet, iratkozz fel a szolgáltatásra
A vezérlő a következőképpen meghatározhatja a tesztmódszert:
Menjünk a projekt bin könyvtárához, és indítsuk el a parancssoron keresztül, a kód a következő:
Tekintse meg a linket a böngészőjén:
http://127.0.0.1:8500/ui/dc1/services/test.itsvse
http://127.0.0.1:8500/v1/catalog/service/test.itsvse
A json adatok a következők:
[ { "ID": "bb644359-6b2a-a27e-7a0a-a1950b8e515f", "Node": "DESKTOP-EB7B69D", "Cím": "127.0.0.1", "Adatközpont": "dc1", "TaggedAddresses": { "lan": "127.0.0.1", "WAN": "127.0.0.1" }, "NodeMeta": { "konzul-hálózat-szegmens": "" }, "ServiceKind": "", "ServiceID": "507338bf-a5a6-4013-9675-c43a40a2c1a0", "ServiceName": "test.itsvse", "ServiceTags": [ "teszt", "itsvse" ], "ServiceAddress": "127.0.0.1", "ServiceWeights": { "Passzol": 1, "Figyelmeztetés": 1 }, "ServiceMeta": {}, "ServicePort": 8083, "ServiceEnableTagOverride": hamis, "ServiceProxy": { "MeshGateway": {}, "Feltárás": {} }, "ServiceConnect": {}, "CreateIndex": 1317, "Módosító index": 1317 }, { "ID": "bb644359-6b2a-a27e-7a0a-a1950b8e515f", "Node": "DESKTOP-EB7B69D", "Cím": "127.0.0.1", "Adatközpont": "dc1", "TaggedAddresses": { "lan": "127.0.0.1", "WAN": "127.0.0.1" }, "NodeMeta": { "konzul-hálózat-szegmens": "" }, "ServiceKind": "", "ServiceID": "bb21f150-7219-4eda-bc91-54686a750228", "ServiceName": "test.itsvse", "ServiceTags": [ "teszt", "itsvse" ], "ServiceAddress": "127.0.0.1", "ServiceWeights": { "Passzol": 1, "Figyelmeztetés": 1 }, "ServiceMeta": {}, "ServicePort": 8082, "ServiceEnableTagOverride": hamis, "ServiceProxy": { "MeshGateway": {}, "Feltárás": {} }, "ServiceConnect": {}, "CreateIndex": 1314, "ModifyIndex": 1314 }
]
Konzuli szolgálati hívás
Hozzon létre egy új .NET Core konzolprojektet az alábbi kóddal:
Véletlenszerűen hívom a regisztrált test.itsvse szolgáltatást, és az eredmény a következő:
Végül a forráskód letöltése:
Turisták, ha szeretnétek megnézni ennek a bejegyzésnek a rejtett tartalmát, kérlek Válasz |