microservizi metodi granularità

2

Sto costruendo un'applicazione Mvc con microservizi che recuperano le informazioni dal database.

Ho una domanda relativa ai microservizi. Voglio un'entità dal database con alcune proprietà in una pagina dell'applicazione. Quindi ho creato il metodo del servizio che recupera le informazioni.

In un'altra pagina, voglio la stessa entità ma anche altre proprietà.

Ho due possibilità:

  1. implementa un altro metodo che restituisce un nuovo dto
  2. Aggiungi le proprietà al metodo che esiste già.

Nel primo caso ho un nuovo metodo e un nuovo dto da mantenere ma ogni cambiamento è possibile e sotto controllo, nel secondo ho un dto unico ma con proprietà non usate dalle prime pagine del client.

Qual è la migliore soluzione di microservizi "scolastica"?

    
posta user3401335 19.01.2018 - 14:11
fonte

1 risposta

1

Poiché questa è la stessa tabella, schema e database, un metodo sarebbe sufficiente in quanto i dati si trovano tutti nello stesso contesto limitato da un punto di vista del micro-servizio. Prendi in considerazione l'interruzione di 2 servizi se i dati non fanno parte dello stesso contesto limitato.

Vorrei prendere in considerazione la possibilità di suddividere in due metodi se il numero di proprietà sul secondo recupero è sufficientemente ampio da giustificare una seconda chiamata. In tal caso, farei una chiamata iniziale per riempire un oggetto "slim" e quindi la chiamata secondaria per riempire l'oggetto "pieno". Ma se ci sono solo alcune proprietà che sono diverse, fai una sola chiamata.

Ad esempio, se la prima chiamata ha recuperato 3 proprietà e la chiamata successiva ha recuperato 5 proprietà, solo una chiamata.

Se la prima chiamata ha richiamato 3 proprietà e la seconda chiamata ha recuperato 20 proprietà, avere due chiamate separate avrebbe senso, sia che si utilizzassero i micro-servizi oppure no. Inoltre, se l'utente ha sempre intenzione di ottenere tutti i dati a prescindere, solo una chiamata in anticipo.

    
risposta data 19.01.2018 - 16:21
fonte

Leggi altre domande sui tag