'Used to ratelimit an incoming request from given host
Example usage:
with rate_limiter.ratelimit(origin) as wait_deferred:
yield wait_deferred
# Handle request ...
Args:
host (str): Origin of incoming request.
Returns:
_PerHostRatelimiter'

def ratelimit(self, host):

    return self.ratelimiters.setdefault(host, _PerHostRatelimiter(clock=self.clock, window_size=self.window_size, sleep_limit=self.sleep_limit, sleep_msec=self.sleep_msec, reject_limit=self.reject_limit, concurrent_requests=self.concurrent_requests)).ratelimit()
