Nella nostra applicazione monolite, il codice utilizzato per gestire l'invio di SMS ed e-mail è stato scritto nel nostro livello aziendale. Ora la responsabilità di inviare e-mail e SMS è gestita da un microservizio. Lo chiamo SendMicroservice . Ora altri microservizi chiamano SendMicroservice se vogliono inviare e-mail e SMS. Diciamo che questo microservizio è chiamato WantsToSendMicroservice .
In genere, la norma nella nostra organizzazione è di avere un livello di servizio per parlare con il mondo esterno. Il livello aziendale per prendere decisioni e il livello di accesso ai dati per parlare con i database, solo una tipica architettura a N-layer.
Ora in quale strato di WantsToSendMicroservice , dovrebbe parlare con SendMicroservice ? Attualmente nella nostra organizzazione, è fatto nel livello aziendale. Ma loro parlano solo con SendMicroservice . In genere nessuna decisione viene presa lì. Il livello aziendale è il luogo ideale in cui i microservizi possono parlare tra loro o che dovrebbero essere eseguiti in un altro livello? Forse il livello di servizio o qualche altro?