EDA: Event Driven Architecture

Salve,

mi pare di capire che i tre perni dei servizi sono costituiti da Service Orientation (SOA), Resource (ROA), e Event Driven.

In Provincia Autonoma di Bolzano stiamo guardando al protocollo AMQP (cfr. https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol), e lo consideriamo al posto di JMS, in quanto interoperabile quanto meno .NET/JEE.

Sono già state prese in considerazioni technologie/protocolli per l’EDA nell’architettura?

Saluti
#pasquale

Buongiorno Pasqualino,

ho spostato questo post nella sezione Piano Triennale / Interoperabilità.

Le linee guida attualmente in consultazione, anche se ancora parziali, affrontano anche questo tema.
Invito quindi ad esprimere commenti direttamente sul sito della consultazione in modo che questo intervento possa trasformarsi in un contributo alla scrittura delle LG.

Simone Piunno
Team per la Trasformazione Digitale

1 Mi Piace

Buongiorno Pasquale,

intendete utilizzare AMQP per la comunicazione interna all’amministrazione o per la comunicazione tra amministrazioni differenti?

Se state comunicando con altre amministrazioni, le Linee Guida indicano di implementare dei sistemi di code sopra un layer HTTPS in modo da poter gestire:

  • throttling
  • autenticazione
  • tracciamento

utilizzando le stesse modalità delle altre piattaforme.

Se hai domande sono ben felice di rispondere.

Ciao Roberto,

abbiamo “scoperto” AMQP da poco. Autenticazione e tracciamento sono due aspetti che vengono offerti anche da questo protocollo. Ne vogliamo fare dapprima uso interno; man mano che andiamo avanti, potrebbe essere interessante considerare un uso anche esterno.

Ciao Pasqualino,

AMQP è un protocollo molto interessante e non vedo problemi nell’utilizzarlo all’interno di un’organizzazione.

La risposta precedente voleva porre l’accento che AMQP - per autenticazione e tracciamento, non usa le stesse modalità delle piattaforme basate su HTTP: apre quindi la porta a tutta una serie di problematiche di interoperabilità.

Ti faccio un esempio concreto: nella documentazione di OpenStack puoi vedere come l’utilizzo di AMQP avviene all’interno delle singole componenti o nei rari casi di componenti fortemente accoppiate, mentre l’interfacciamento - sia all’esterno che tra componenti diverse - avviene sempre via API HTTP con una semantica ben definita e costruite intorno al consumatore.