public function getByContinuously($column, $value, array $columns = ['*'], $retries = 10, $delayMs = 100, $maxDelay = 2000, $maxRetries = 100)
    {
        // Hard limits
        $maxDelay = ($maxDelay > 2000) ? 2000 : $maxDelay;
        $maxRetries = ($maxRetries > 100) ? 100 : $maxRetries;

        // Validate delay parameter
        if ($delayMs > $maxDelay) {
            throw new NodesException('Invalid input parameter. Maximum delay is '.$maxDelay.' milliseconds', 0, null, false);
        }

        // Validate retry parameter
        if ($retries > $maxRetries) {
            throw new NodesException('Invalid input parameter. Maximum retry amount is '.$maxRetries, 0, null, false);
        }

        // Retrieve entity continuously
        for ($try = 0; $try < $retries; $try++) {
            $entity = $this->getBy($column, $value, $columns);
            if (! empty($entity)) {
                return $entity;
            }

            // Delay next retry
            usleep($delayMs * 1000);
        }

        return false;
    }