Integrasjonsplattformen

Integrasjonsplattformen

Integrasjonsplattformen som er brukt i dag, består av følgende komponenter

 

Embed draw.io Diagram

 

  • MuleSoft, eid av Salesforce, er selve motoren i alle integrasjoner. Den består av både utviklingsmiljø og kjøremiljø.

  • Som database, bruker vi DocumentDb, som en AWS service. Den fungerer som en MongoDb database og kjører altså på AWS.

  • Vi har nylig erstattet Apache Kafka med vårt egenutviklede melding-kø-system, MeldingQ, for alle våre integrasjoner. Mens Kafka tidligere ble brukt som kø-system og mellomledd for asynkron kommunikasjon mellom integrasjoner, er MeldingQ nå bygget på MongoDb (DocumentDb) for å oppfylle de samme behovene (mer informasjon).

  • Som lagringsmekanisme, bruker vi S3, levert av AWS.

  • Gravitee brukes som API gateway.

  • For logghåndtering og overvåking bruker vi Grafana/Loki som fungerer som vårt sentrale system for innsikt i alle integrasjonslogger. Den er bygget for å være kostnadseffektiv og skalerbar ved at den kun indekserer metadata, mens selve loggdataene lagres i S3. Loki gir oss en samlet oversikt over feilmeldinger og ytelse på tvers av hele arkitekturen, fra API-kall i Gravitee til meldingsflyten i MeldingQ. Dette sikrer at vi raskt kan identifisere og løse problemer i våre asynkrone og synkrone integrasjonsløp.

 

 

MeldingQ tilbyr liknende funksjonalitet som Kafka, men er mer tilpasset våre spesifikke krav og arkitektur. Det gir oss større fleksibilitet og bedre kontroll over meldingstransporten mellom tjenester. Denne endringen innebærer at alle asynkrone integrasjoner nå kommuniserer via MeldingQ, og løsningen gir oss en strømlinjeformet og effektiv håndtering av meldinger.