sql >> Database teknologi >  >> NoSQL >> MongoDB

Mongo Change Streams, der kører flere gange (en slags):Node-app, der kører flere forekomster

At gøre dette med stærke garantier er svært, men ikke umuligt. Jeg skrev om detaljerne i en løsning her:https://www.alechenninger.com/2020/05/building-kafka-like-message-queue-with.html

Eksemplerne er i Java, men den vigtige del er algoritmen.

Det kommer ned til et par teknikker:

  • Hver proces forsøger at opnå en lås
  • Hver lås (eller hver ændring) har et tilknyttet hegnstoken
  • Behandling af hver ændring skal være idempotent
  • Mens ændringen behandles, bruges tokenet til at sikre ordnede, effektive opdateringer.

Flere detaljer i blogindlægget.



  1. Opretter forbindelse til MongoDB over SSL med Node.js

  2. Masseoprettelse af nøgler i Redis - ServiceStack C#

  3. Vælg Max() med gruppe efter i mongodb

  4. Mongodb sorterer med store og små bogstaver