Izplatītajās lietojumprogrammās bieži ir nepieciešams mainīt konfigurācijas rekvizītus, piemēram, atjaunināt datu bāzes savienojuma virknes un atjaunināt kešatmiņas adreses. Ja lietojumprogrammu nav daudz, varat to manuāli modificēt, kad ir daudz lietojumprogrammu, izplatītā konfigurācija ir ļoti svarīga, šajā rakstā izskaidrota .net/c# atslēgas / vērtības krātuves arhitektūra, kuras pamatā ir konsuls, lai īstenotu izplatīto konfigurāciju.
Instalējiet konsulu
Īss ievads
Konsuls ir pakalpojumu atklāšanas un reģistrācijas rīks, kas ir izplatīts un ļoti mērogojams.
Konsuls galvenokārt ietver šādas funkcijas:
- Pakalpojuma noteikšana: atbalsts pakalpojumu reģistrācijai un atklāšanai gan HTTP, gan DNS protokoliem.
- Pārraudzības pārbaudes: atbalsta vairākas veselības pārbaudes.
- Atslēgas/vērtības krātuve: atbalsta izplatītu KV datu glabāšanu, izmantojot HTTP API.
- Vairāku datu centru atbalsts: tiek atbalstīts neierobežots datu centru skaits.
Instalācijas
Lejupielādes adrese:
Hipersaites pieteikšanās ir redzama.
Šajā rakstā kā testa vide tiek izmantota Windows 10 x64.
Pēc lejupielādes un izsaiņošanas palaidiet to, izmantojot komandu cmd, kods ir šāds:
dev nozīmē darboties izstrādes režīmā, un parametru -client var izmantot, lai norādītu, kādam IP klientam ir atļauts piekļūt, piemēram, -client 127.0.0.1 nozīmē, ka to var izmantot, un izstrādes režīmā dati netiks saglabāti.
(izstrādātāja režīms, klastera režīms ir ieteicams ražošanas vidēm)
Piekļuve:http://127.0.0.1:8500/ui/dc1/servicesSkatīt zemāk:
KV interfeiss
API dokumentācijas adrese:
Hipersaites pieteikšanās ir redzama.
Pirmkārt, es izmantoju tiešsaistes tīmekļa lapu un izveidoju jaunu atslēgas/vērtības pāri.
Iegūstiet vērtību, izmantojot GET pieprasījuma ceļu /v1/kv/:key.
http://127.0.0.1:8500/v1/kv/test
[ { "LockIndex": 0, "Atslēga": "tests", "Karogi": 0, "Vērtība": "aXRzdnNlLmNvbQ==", "Izveidot indeksu": 194, "Modificēt indeksu": 194 }
]
- CreateIndex ir iekšējā indeksa vērtība, kas norāda, kad ieraksts tika izveidots.
- ModifyIndex ir pēdējais indekss, kas modificē šo atslēgu. Šis indekss atbilst galvenes vērtībai, ko atbildē atgriež X-Consul-Index, un to var iestatīt ar ? Indeksa vaicājuma parametrs tiek izmantots, lai izveidotu bloķējošus vaicājumus. Jūs pat varat veikt bloķēšanas vaicājumus pret visu KV veikala apakškoku: kas būtu, ja? rekurss nodrošina vaicājumu, un atgrieztā vērtība X-Consul-Index atbilst jaunākajai prefiksa ModifyIndex vērtībai, izmantojot bloķēšanas vaicājumu ?index gaidīs, līdz tiks atjaunināta šī prefiksa atslēga.
- LockIndex ir reižu skaits, kad slēdzenes atslēga ir veiksmīgi iegūta. Ja bloķēšana ir aizturēta, sesijas atslēga nodrošinās sesiju, kurai pieder slēdzene.
- Galvenais ir tikai pilns ieraksta ceļš.
- Karodziņi ir necaurspīdīgi veseli skaitļi, kas nav parakstīti, kurus var pievienot katram ierakstam. Klienti var izvēlēties izmantot šo iespēju, bet tas ir jēga viņu lietojumam.
- Vērtība ir base64 kodēts datu bloks.
.NET/C# atslēga/vērtības lasīšana un rakstīšana
Vispirms izveidojiet .NET 4.6.1 projektu un izmantojiet nuget, lai instalētu nepieciešamās pakotnes, kā norādīts tālāk.
Kods ir šāds:
Atveidojumi ir šādi:
- Atslēga ir reģistrjutīga
- Atslēgas dublikāts, vērtību vērtības tiks pārrakstītas
(Beigas) |