While microservices operate primarily stateless, under scaling events and an event driven system a centralized communication / que / work tracker of which copy of this service is working on which item in the stream is important.
Maintaining such information allows for recovery of failed state / crashes logic to be enabled in code without a full transaction verification system via poll of clients.
This approach also fits well with the TAP method in Functional Programming Libraries.
NOTE: Zyre could have been used as an alternative but the broadcast nature of it is blocked in most cloud providers and CNI providers with Kubernetes
Break into smaller work units
https://github.com/coast-team/netflux
While microservices operate primarily stateless, under scaling events and an event driven system a centralized communication / que / work tracker of which copy of this service is working on which item in the stream is important.
Maintaining such information allows for recovery of failed state / crashes logic to be enabled in code without a full transaction verification system via poll of clients.
This approach also fits well with the TAP method in Functional Programming Libraries.
NOTE: Zyre could have been used as an alternative but the broadcast nature of it is blocked in most cloud providers and CNI providers with Kubernetes
connects #21