Currently the proxy's logic (both HTTP and L4) tries to find an existing service, and if none exists, it simply allocates on the node with least latency. This doesn't guarantee the node with least latency is performant (in test cases ran so far, we always left a node meeting the service's performance requirements. Instead, it should always try to allocate on a performant node.
If an existing service does exist and it fails the performance check, it tries to allocate on a performant node. Right now its looking for a node using the found service's existing performance as a bound.
Two issues: