protected function setOptions(array $options = [])
    {
        $options += $this->getDefaultOptions();
        $this->prefix = !empty($options['prefix']) ? $options['prefix'] : null;
        // Normalize Server Options
        $servers = [];
        foreach ($this->getRedisServers(array_get($options, 'servers', [])) as $server) {
            $servers[] = $server;
        }
        // Get Redis Instance
        $redis = $this->getRedisInstance($servers);

        // select database - we use isset because the database can be 0
        if (isset($options['database'])) {
            $redis->select($options['database']);
        }
        if (!empty($options['prefix'])) {
            $redis->setOption(\Redis::OPT_PREFIX, $options['prefix'] . ':');
        }

        $this->redis = $redis;
    }