@Aaronontheweb I am just in the proof of concept phase right now. But I still I wonder if there is a way around this issue. Currently I use a single writer pattern in which I have to look up all the events load them into the aggregate run an invariant check then commit the results as versioned events. What I liked about the resizer and hash pool combo was the elasticity. When an actor being the aggregate is no longer needed it would just shutdown but if it was used constantly being used there was no need to reload it just to the invariant check then move on. Still the hash pool is still a good idea I just need to determine the a good number of actors in the pool at startup. That value could be a configurable value and a system restart would solve the resizing. It just to bad you can't send a message to all the actors to stop processing and then once the are done processing pump all their messages back through the system hasher to rebalance.
@HCanber did you started to work with CircuitBreaker yet - I've created some general purpose CircuitBreaker with support for async code, non-locking state switching and test suite
maybe it could be usefull
it's available here - maybe I'll write a blog post about it
@Horusiath Writing a post would be a good idea. The code looks really interesting and it would cool to see how you came up with your implementation. If I where in the Poland I would buy you a cold beer 🍺 and we could discuss it but a post will do.😊