Das System ist dann schon deutlich besser. Backend erstellt ein Ticket mit einer Id, die in der Datenbank dann einen Rank bekommt. Wird dann in den Cookie gelegt oder ein JWT mit gemeinsamer Signatur über die Systeme hinweg. Und danach per serversite events immer die aktuellen Buckets an die clients pushen, die dann den state der page wechseln.
Bei der Bestellung wird geguckt, ob beim POST zum ShoppingCart dann die aktuelle ID "an der Reihe ist". Bestellung durch: Neue Events pushen und die nächsten sind dran. Und alle 10 Minuten, werden die Tickets invalidiert, dass Nichtstuer aus der Queue fliegen. Für mich das beste System, das nicht mit den Erwartungen spielt. Vier Autarke Services, die sich eine Event-Queue für die Kommunikation teilen:
1. Shop as Is (CDN)
2. Warenkorb
3. Warteschlange
4. Bestellung