Delen via


Garanties voor berichtenbezorging

Orleans Garanties voor berichtenbezorging zijn standaard maximaal één keer. Als deze optie is geconfigureerd om nieuwe pogingen uit te voeren na een time-out, Orleans kunt u in plaats daarvan ten minste één keer leveren.

In meer detail:

  • Elk bericht Orleans heeft een automatische time-out (de exacte time-out kan worden geconfigureerd). Als het antwoord niet op tijd aankomt, wordt de geretourneerde fout verbroken Task met een time-outuitzondering.
  • Orleans kan worden geconfigureerd om automatische nieuwe pogingen uit te voeren bij een time-out. Standaard worden er geen automatische nieuwe pogingen gedaan.
  • Toepassingscode kan er natuurlijk ook voor kiezen om nieuwe pogingen uit te voeren bij een time-out.

Als het Orleans systeem is geconfigureerd om geen automatische nieuwe pogingen uit te voeren (standaardinstelling) en de toepassing niet opnieuw wordt verzonden, Orleans biedt het maximaal één keer verzenden van berichten. Een bericht wordt eenmalig of helemaal niet bezorgd. Het zal nooit twee keer worden afgeleverd.

In het systeem met nieuwe pogingen (door de runtime of door de toepassing) kan het bericht meerdere keren binnenkomen. Orleans doet momenteel niets om duurzaam op te slaan welke berichten al zijn aangekomen en de tweede bezorging onderdrukken. (We denken dat dit behoorlijk kostbaar zou zijn.) Dus in een systeem met nieuwe pogingen Orleans garandeert NIET maximaal één keer levering.

Als u het mogelijk voor onbepaalde tijd opnieuw probeert, komt het bericht uiteindelijk binnen, waardoor de garantie van de levering ten minste één keer wordt geboden. U ziet dat 'uiteindelijk aankomt' iets is dat de runtime moet garanderen. Het komt niet helemaal zelf gratis, zelfs niet als je het opnieuw probeert. Orleans biedt uiteindelijk levering, omdat korrels nooit in een permanente foutstatus gaan en een mislukt graan uiteindelijk opnieuw wordt geactiveerd op een andere silo.

Dus om samen te vatten: in het systeem zonder nieuwe pogingen Orleans garandeert maximaal één keer dat berichten worden bezorgd. In het systeem met oneindige nieuwe pogingen garandeert Orleans u ten minste één keer (en biedt geen garantie voor ten hoogste één keer).

Belangrijk

In het Orleans technische rapport hebben we per ongeluk alleen de tweede optie genoemd met automatische nieuwe pogingen. We vergeten te vermelden dat standaard zonder nieuwe pogingen, Orleans biedt at-most-once levering.