Open JakuSw opened 2 weeks ago
As a user (developer) I want to do some action in background
As a user I want to publish event to bus service to be consumed by other service
We need to provide functionality where the user will be able to pass some data (initially in the form of .NET CLR Type) to API that will persist that data in previously configured storage (for example SQL Server Database or Azure BLOB). Additionally, data persisted must be able to be fetched via API from that storage.
This is essentially the extension of the above need of fetching the persisted data but with requirement that reads have to follow FIFO ordering.
Since we are implementing the outbox pattern we will be dealing with processed and not yet processed messages. We need to provide an API that will allow us to mark selected messages as processed.
We do not want to duplicate our job so when consuming from the outbox we should only consume messages that were not marked as already processed.
Processing in batches gives us a higher throughput since we load more into memory with a single round-trip to persistence storage. User need that flexibility along with being able to adjust how many messages should be within a batch.
Place to add use cases of app