Clientes en Python
Acceda a una instancia de DCS Redis a través de redis-py en un ECS en la misma VPC. Para obtener más información sobre cómo usar otros clientes de Redis, visite el sitio web oficial de Redis.
Utilice redis-py para conectarse a instancias de nodo único, principal/en standby y de Clúster Proxy y redis-py-cluster para conectarse a instancias de Clúster Redis.
Prerrequisitos:
- Se ha creado una instancia de DCS Redis y se encuentra en el estado Running.
- Se ha creado un ECS. Para obtener más información sobre cómo crear un ECS, consulte Compra de ECS.
- Si el ECS ejecuta el SO de Linux, asegúrese de que el entorno de compilación de Python se ha instalado en el ECS.
Procedimiento
- Vea la dirección IP/nombre de dominio y el número de puerto de la instancia de DCS Redis a la que se debe acceder.
Para obtener más información, consulte Consulta de detalles de instancia.
- Inicie sesión en el ECS.
A continuación se utiliza CentOS como ejemplo para describir cómo acceder a una instancia mediante un cliente de Python.
- Acceda a la instancia de DCS Redis.
Si el sistema no proporciona Python, ejecute el siguiente comando yum para instalarlo:
yum install pythonLa versión de Python debe ser 3.6 o posterior. Si la versión predeterminada de Python es anterior a la 3.6, realice las siguientes operaciones para cambiarla:
- Ejecute el comando rm -rf python para eliminar el enlace simbólico de Python.
- Ejecute el comando ln -s pythonX.X.X python para crear otro enlace de Python. En el comando, X.X.X indica el número de versión de Python.
- Si la instancia es una instancia de nodo único, principal/en standby o de Clúster Proxy:
- Instalar Python y redis-py.
- Si el sistema no proporciona Python, ejecute el siguiente comando yum para instalarlo.
- Ejecute el siguiente comando para descargar y descomprimir el paquete redis-py:
wget https://github.com/andymccurdy/redis-py/archive/master.zip
unzip master.zip
- Vaya al directorio donde se guarda el paquete redis-py descomprimido e instale redis-py.
Después de la instalación, ejecute el comando python. redis-py se ha instalado correctamente si se muestra el siguiente resultado del comando:
Figura 1 Ejecutar el comando python
- Utilice el cliente redis-py para conectarse a la instancia. En los siguientes pasos, los comandos se ejecutan en modo CLI. (Alternativamente, escriba los comandos en un script de Python y luego ejecute el script.)
- Ejecute el comando python para entrar en el modo CLI. Ha entrado en el modo CLI si se muestra el siguiente resultado del comando:
Figura 2 Entrar en el modo CLI
- Ejecute el siguiente comando para acceder a la instancia de DCS Redis elegida:
r = redis.StrictRedis(host='XXX.XXX.XXX.XXX', port=6379, password='******');
XXX.XXX.XXX.XXX indica la dirección IP/nombre de dominio de la instancia DCS y 6379 es un número de puerto de ejemplo de la instancia. Para obtener más información sobre cómo obtener la dirección IP/nombre de dominio y el puerto, consulte 1. Cambie la dirección IP/nombre de dominio y el puerto según sea necesario. ****** indica la contraseña utilizada para iniciar sesión en la instancia de DCS Redis elegida. Esta contraseña se define durante la creación de una instancia de DCS Redis.
Ha accedido correctamente a la instancia si se muestra el siguiente resultado del comando. Introduzca comandos para realizar operaciones de lectura y escritura en la base de datos.
Figura 3 Redis conectado correctamente
- Ejecute el comando python para entrar en el modo CLI. Ha entrado en el modo CLI si se muestra el siguiente resultado del comando:
- Instalar Python y redis-py.
- Si la instancia es una de Clúster Redis:
- Instale el cliente redis-py-cluster.
- Acceda a la instancia de DCS Redis mediante redis-py-cluster.
En los siguientes pasos, los comandos se ejecutan en modo CLI. (Alternativamente, escriba los comandos en un script de Python y luego ejecute el script.)
- Ejecute el comando python para entrar en el modo CLI.
- Ejecute el siguiente comando para acceder a la instancia de DCS Redis elegida:
>>> from rediscluster import RedisCluster >>> startup_nodes = [{"host": "192.168.0.143", "port": "6379"}] >>> rc = RedisCluster(startup_nodes=startup_nodes, decode_responses=True) >>> rc.set("foo", "bar") True >>> print(rc.get("foo")) 'bar'