Add support for Distributed Semaphores to MultiLock. This is a coordination pattern that allows users to control concurrent access to shared resources across multiple processes and machines. Have a configurable number of slots, i.e. 5 microservices out of 9 can access the shared resource.
This new functionality will complement the existing Leader Election pattern.
Scenario: We have a microservice which uses an external API which has a concurrency limit - only 5 concurrent calls can be made. And we have 40 instances of the microservice, but then only 5 of them can communicate with the external API at any time.
Use the same provider infrastructure as the Leader Election pattern.
Add support for Distributed Semaphores to MultiLock. This is a coordination pattern that allows users to control concurrent access to shared resources across multiple processes and machines. Have a configurable number of slots, i.e. 5 microservices out of 9 can access the shared resource.
This new functionality will complement the existing Leader Election pattern.
Scenario: We have a microservice which uses an external API which has a concurrency limit - only 5 concurrent calls can be made. And we have 40 instances of the microservice, but then only 5 of them can communicate with the external API at any time.
Use the same provider infrastructure as the Leader Election pattern.