NexusFabricCereți o prezentare

Platforma

NexusFabric e un proces care primește mesaje, le trece prin fluxuri compilate și le livrează mai departe. Pagina asta descrie cum e așezată, iar capitolele de la final intră în detaliu.

Piesele dintr‑un singur program

Ușa din față, transformarea și rutarea, coada persistentă cu reîncercări și coada de mesaje nelivrate, jurnalul mesajelor și interfața de administrare rulează într-un singur program. Jetoanele vin de la furnizorul dumneavoastră de identitate.

Fiecare flux e verificat înainte să primească trafic

Un flux e un fișier Markdown, cu antet și pași. Îl validați din linia de comandă și îl publicați. Publicarea îl compilează într-un artefact identificat prin amprenta lui; ce nu se compilează nu ajunge la rulare.

Se verifică la publicare:

  • Structura fluxului și forma blocului de rutare.
  • Numele fluxurilor, după o singură regulă.
  • Șabloanele: cheile de credențiale și anteturile de ieșire.
  • Transformările: un XSLT în afara subsetului acceptat e refuzat, nu executat altfel.
  • Versiunea SOAP: orice în afară de 1.1 și 1.2 e refuzat.

La rulare preiau gardurile fluxului: validate refuză explicit un mesaj, la prima regulă falsă, iar condition filtrează tăcut.

Deduplicarea, declarată o dată, aplicată oricum ar sosi mesajul

Deduplicarea o declarați o singură dată, în flux. Fie că mesajul vine apoi prin HTTP sincron, prin coadă, prin programare temporală sau prin ușa gRPC, intră prin aceeași paranteză de livrare, unde se decid deduplicarea, corelarea și memoizarea răspunsului: un singur loc, nu patru copii care pot ajunge să difere. Coada intră în paranteză la lucrător, nu la predare.

Ce se schimbă și ce nu se schimbă între ușile de intrare
UșaControl de accesUnde se citește în jurnal
HTTP sincronAcelașiCanal http
CoadăAcelașiCanal queue
Programare temporalăNu se aplică: declanșarea e internăCanal cron
gRPCAcelașiCanal grpc

Unitatea măsurată e livrarea, nu cererea: o livrare lasă în jurnal o intrare de primire și exact un verdict. Pe ce ușă a intrat se citește dintr-o coloană dedicată, nu din felul evenimentului.

Un singur proprietar al execuției

Execuția are un singur proprietar în proces. Când instalația e la capacitate, refuzul e zgomotos: un apel sincron e refuzat, iar jurnalul primește un fel de refuz distinct de o eroare de flux. La ușa cozii, mesajul e totuși acceptat și așteaptă pe disc; se refuză doar pornirea lucrătorului ei. Refuzul la capacitate și cel pentru o cerere care n-are ce livra rămân în afara ratei de eroare a fluxurilor.

Instalarea și configurarea

O instalație pornește știind numai manualul de operare: primul flux rulează cu poarta închisă și cu configurarea luată din mediu, în imaginea livrată.

Configurarea de mediu se declară în flux. Un flux publicat care cere o cheie pe care instalația nu o oferă oprește pornirea, cu fluxul, cheia și variabila numite. Lipsa se vede la pornire, nu la primul mesaj din producție.

Mai multe motoare, fără cluster de administrat

Porniți același program din nou, peste același director de stare. Lacătele de fișier sunt singurul lucru care coordonează copiile.

Platforma, pe capitole