markusthoemmes commented on issue #2859: LoadBalancerService does not consider 
concurrent requests when scheduling
URL: 
https://github.com/apache/incubator-openwhisk/issues/2859#issuecomment-337065359
 
 
   This is not necessarily related to the shared state, it is also the case 
with the local version of the load balancer. Although that used AtomicIntegers, 
they were simply used as a thread-safe counter in terms of changing operations, 
but not used as an atomically checked-then-update counter.
   
   Should we implement the Loadbalancer as an Actor to achieve local 
consistency for each Controller to start? That would solve parallel read 
consistency at least.
   
   For the write/read races introduced because of state-sharing, we can come up 
with a smart solution as outlined by @tysonnorris to keep local state 
synchronous. Maybe there's a mechanism to wait for a write to happen and then 
implement the respective operations as `ask`s so they "block" scheduling until 
that returned?
   
   As noted by @vvraskin both of these bits would need to be tested under load 
but I'm confident that at least the "load balancer as an Actor" should not 
impose a bottleneck.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to