private function computeCurrentRate($identifier)
    {
        $measure = $this->getMeasure($identifier);
        $lastRequest = (float) $measure->getTime()->format('U.u');
        $lastRatio = $measure->getRate()->getTicks();

        $difference = (microtime(true) - $lastRequest) * 1000;

        $rate = max(0, $lastRatio - $difference);
        $rate += 1000 / $this->rate->getTicks();

        return $rate;
    }