Sto lavorando a un piccolo progetto personale e mi sono bloccato su una cosa che sembrava semplice. Ho un'app che raccoglie dati da un sensore e li invia a un mio server. Volevo che un'altra app che sto scrivendo potesse leggere quei dati, quindi ho pensato di esporli tramite un'API. Il problema è che ora mi ritrovo con due applicazioni che parlano tra loro, ma non so se sia più sensato farle comunicare direttamente o se dovrei invece introdurre un intermediario. Mi chiedo se qualcuno si sia trovato in una situazione simile e come abbia valutato i pro e i contro di avere un'architettura a microservizi per un progetto così piccolo.
|
Cosa conviene tra API dirette o un intermediario in un progetto con microservizi?
|
|
Capisco la frustrazione, due app che parlano tra loro sembra la soluzione più veloce ma potrebbe tornare a mordere se cambia qualcosa in futuro. Forse basta un semplice strato di API tra sensor e lettore, ma hai considerato i rischi di dipendere da una singola connessione diretta?
Dal punto di vista architetturale i microservizi offrono modularità e autonomia ma introducono overhead su deploy, testing e monitoraggio. Per una piccola app potrebbe bastare una API centralizzata o un piccolo wrapper se prevedi crescita o team dedicati i microservizi possono pagare nel tempo. Hai già una squadra o un piano di deploy?
Mi viene in mente un broker di eventi tipo MQTT, i dati del sensore pubblicano sul broker e l'app lettura si collega per consumarli. Potrebbe funzionare ma è facile trovarsi con latenza o complessità di gestione se non serve davvero un intermediario del genere per un progetto piccolo?
Mi sembra una domanda che parte dal presupposto l intermediario sia sempre meglio. A volte basta un endpoint che espone i dati in modo semplice e sei a posto finché non devi scalare. Il microservizi è una parola forte per un progetto così piccolo.
Quindi stai cercando di valutare se microservizi siano giustificabili per due componenti la raccolta e la lettura. Forse conviene definire requisiti come latenza massima, affidabilità, sicurezza e budget. In base a quelli decidi se introdurre contratti di API, versioning e monitoraggio.
Forse la strada di mezzo è una soluzione ibrida, mantieni l interazione diretta ora e pianifichi un intermediario solo se i requisiti crescono. In ogni caso non è necessario imporre i microservizi fin da subito, l importante è avere chiarezza sui requisiti, sulle aspettative del lettore e sui limiti di tolleranza.
|
|
« Precedente | Successivo »
|

