La soluzione più semplice è archiviare (buffer) le operazioni nell'applicazione e inviarle tutte insieme a MongoDB quando viene eseguito l'endpoint di commit.
Tecnicamente puoi gestire manualmente il ciclo di vita delle transazioni nella tua applicazione e implementare transazioni che abbracciano le richieste web, ma questo è 1) sarà piuttosto imbarazzante e 2) perderai la gestione degli errori transitori che il driver fa per te nell'API withTransaction.
Per fare questo:
- Familiarizzare con le specifiche delle sessioni
- Familiarizzare con le specifiche delle transazioni
- Leggi il specifiche api tx convenienti in modo da sapere cosa non farai ottenere gratuitamente, se il tuo cliente chiede perché stai esponendo errori che i conducenti non lo fanno
- Rivedi il codice nel tuo driver che implementa queste specifiche
- Implementa un numero sufficiente di sessioni e gestione delle transazioni per i tuoi requisiti nella tua applicazione
Potrebbe essere più semplice eseguire il fork e la patch del driver, ma questo ovviamente ha altri problemi derivanti dalla divergenza della base di codice dalla base di codice del driver ufficiale.