NServiceBus and Event Sourcing – Best Practices for Handling Large-Scale Events?

Hey All,

I have been working with NServiceBus for a while now & I am seaching to dive deeper into event sourcing. I want to know about the best practices for handling large-scale events in systems with high throughput.

We are building a system that generates tons of events every minute & while NServiceBus is handling the messaging part great; I want to know how to best manage things such as event versioning and ensuring that the event store does not get unwieldy as our system grows.

I have been considering broadening my skills in cloud infrastructure and was searching into AWS DevOps Training to improve my deployment pipeline. I think this could potentially tie into how we manage our events and scalability on the cloud.

Has anyone here worked with event sourcing in NServiceBus on a large scale? How do you handle things such as storage; event replay or managing different event versions?

Thank you…:slight_smile:

Hi Sakura,
You touched on a very broad topic and it’s not easy to recommend a single source covering everything. Let me suggest some materials you may want to take a look at.

Regarding the event versioning, please take a look at Oskar Dudycz’s blog post and Greg Young’s book.

Regarding the storage, you may want to take a look at technologies built for event sourcing, such as Marten or Kurrent.

You may also pay attention to the length of your streams. Oskar has talked about this in his article.

You may find Oskar’s blog posts helpful in general as he covers many things around event sourcing.

Please let me know if that helps and if there are any other areas you’re interested in.
Cheers,
Adam Furmanek