I’m digging into Axon 3 from few days to see if it fits our needs and I have a question about scalability of tracking processor in a microservices architecture.
I made few tests and I saw if I configure my tracking processor to be mono thread, and I set the initial segment number to 4, if I have only 2 instances of my microservices which handle the events, only half of the events will be processed, which make sense because only 2 segments from 4 are used.
If I have 4 segments but only 2 instances of my microservices, I guess half of my microservices will never process any events because only 2 of them can borrow a segment.
How can I achieve a microservices architecure using Axon 3 with ES where I can at runtime tweak the number of instances to fit the workload.
I think this is directly related to this : https://github.com/AxonFramework/AxonFramework/issues/634
But, is there currently any workaround to solve this ?