Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Suggerimento
Questo contenuto è un estratto dell'eBook, Architettura di microservizi .NET per applicazioni .NET containerizzati, disponibile in documentazione .NET o come PDF scaricabile gratuitamente leggibile offline.
Ogni microservizio ha un nome univoco (URL) utilizzato per individuare la sua posizione. Il tuo microservizio deve poter essere indirizzabile ovunque sia in esecuzione. Se è necessario considerare quale computer esegue un particolare microservizio, le cose possono andare male rapidamente. Allo stesso modo in cui DNS risolve un URL in un determinato computer, il microservizio deve avere un nome univoco in modo che la posizione corrente sia individuabile. I microservizi necessitano di nomi indirizzabili che li rendono indipendenti dall'infrastruttura su cui sono in esecuzione. Questo approccio implica che esiste un'interazione tra il modo in cui il servizio viene distribuito e il modo in cui viene individuato, perché deve essere presente un registro dei servizi. Allo stesso modo, quando un computer si guasta, il servizio di registro deve essere in grado di indicare dove il servizio è attualmente in esecuzione.
Il modello del Registro di sistema del servizio è una parte fondamentale dell'individuazione dei servizi. Il Registro di sistema è un database contenente i percorsi di rete delle istanze del servizio. Un registro dei servizi deve essere a disponibilità elevata e up-to-date. I client possono memorizzare nella cache i percorsi di rete ottenuti dal registro dei servizi. Tuttavia, tali informazioni alla fine non sono aggiornate e i client non possono più individuare le istanze del servizio. Un registro dei servizi è quindi costituito da un cluster di server che usano un protocollo di replica per mantenere la coerenza.
In alcuni ambienti di distribuzione di microservizi (denominati cluster, da trattare in una sezione successiva), l'individuazione dei servizi è incorporata. Ad esempio, un ambiente Azure Kubernetes Service (AKS) può gestire la registrazione e la deregistrazione dell'istanza del servizio. Esegue anche un proxy in ogni host del cluster che svolge il ruolo del router di individuazione lato server.
Risorse aggiuntive
Chris Richardson. Modello: Registro dei servizi
https://microservices.io/patterns/service-registry.htmlAuth0. Registro dei servizi
https://auth0.com/blog/an-introduction-to-microservices-part-3-the-service-registry/Gabriel Schenker. Scoperta dei servizi
https://lostechies.com/gabrielschenker/2016/01/27/service-discovery/