• 沒有找到結果。

4.3 多语言连接

4.3.3 php 客户端

4.3.3.1 phpredis

介绍使用同一VPC内弹性云服务器ECS上的phpredis连接Redis的方法。更多的客户端的 使用方法请参考Redis客户端。

说明

本章节操作,仅适用于连接单机、主备、Proxy集群实例,如果是使用phpredis客户端连接 Cluster集群,请参考phpredis客户端使用说明。

前提条件

● 已成功申请Redis实例,且状态为“运行中”。

● 已创建弹性云服务器,创建弹性云服务器的方法,请参见创建弹性云服务器。

● 如果弹性云服务器为Linux系统,该弹性云服务器必须已经安装gcc编译环境。

操作步骤

步骤1 查看并获取待连接Redis实例的IP地址/域名和端口。

具体步骤请参见查看实例信息。

步骤2 登录弹性云服务器。

本章节以弹性云服务器操作系统为centos为例介绍通过phpredis redis客户端连接实 例。

步骤3 安装gcc-c++及make等编译组件。

yum install gcc-c++ make 步骤4 安装php开发包与命令行工具。

执行如下命令,使用yum方式直接安装。

yum install php-devel php-common php-cli

安装完后可查看版本号,确认成功安装:

php --version

步骤5 安装php redis客户端。

1. 下载php redis源文件。

wget http://pecl.php.net/get/redis-4.1.0RC3.tgz

以上是当前最新版本。还可以去redis官网或者php官网下载其他版本的phpredis客 户端。

2. 解压php redis源文件包。

tar -zxvf redis-4.1.0RC3.tgz cd redis-4.1.0RC3

3. 编译前先执行扩展命令。

phpize

4. 配置php-config文件。

./configure --with-php-config=/usr/bin/php-config

不同操作系统,不同的php安装方式,该文件位置不一样。建议在配置前,先查找 和确认该文件的目录:

find / -name php-config 5. 编译和安装php redis客户端。

make && make install

6. 安装完后在php.ini文件中增加extension配置项,用于增加redis模块的引用配置。

vim /etc/php.ini 增加如下配置项:

extension = "/usr/lib64/php/modules/redis.so"

说明

php.ini和redis.so两个文件的目录可能不同,需要先查找确认。

例如:find / -name php.ini 7. 保存退出后确认扩展生效。

php -m |grep redis

如果以上命令返回了redis,表示php redis客户端环境搭建好了。

步骤6 使用php redis客户端连接Redis实例。

1. 编辑一个redis.php文件:

<?php

$redis_host = "{redis_instance_address}";

$redis_port = 6379;

$user_pwd = "{password}";

$redis = new Redis();

if ($redis->connect($redis_host, $redis_port) == false) { die($redis->getLastError());

}

if ($redis->auth($user_pwd) == false) { die($redis->getLastError());

}

if ($redis->set("welcome", "Hello, DCS for Redis!") == false) { die($redis->getLastError());

}

$value = $redis->get("welcome");

echo $value;

$redis->close();

?>

其中,{redis_instance_address}为Redis实例的IP地址/域名,“6379”为Redis 实例的端口。IP地址/域名和端口获取见步骤1,请按实际情况修改后执行。

{password}为创建Redis实例时自定义的密码,请按实际情况修改后执行。如果免 密访问,请将密码认证的if语句屏蔽。

2. 执行php redis.php,连接Redis实例。

----结束

连接 Redis 实例操作视频

如果需要详细了解连接redis实例的操作,请单击以下链接观看视频。

访问缓存实例操作视频

4.3.3.2 Predis

介绍使用同一VPC内弹性云服务器ECS上的Predis连接Redis的方法。更多的客户端的使 用方法请参考Redis客户端。

前提条件

● 已成功申请Redis实例,且状态为“运行中”。

● 已创建弹性云服务器,创建弹性云服务器的方法,请参见创建弹性云服务器 。

● 如果弹性云服务器为Linux系统,该弹性云服务器必须已经安装php编译环境。

操作步骤

步骤1 查看并获取待连接Redis实例的IP地址/域名和端口。

具体步骤请参见查看实例信息。

步骤2 登录弹性云服务器。

步骤3 安装php开发包与命令行工具。执行如下命令,使用yum方式直接安装。

yum install php-devel php-common php-cli 步骤4 安装完后可查看版本号,确认成功安装。

php --version

步骤5 将Predis包下载到/usr/share/php目录下。

1. 通过以下命令下载Predis源文件。

wget https://github.com/predis/predis/archive/refs/tags/v1.1.9.tar.gz 说明

以上是当前最新版本。还可以去redis官网或者php官网下载其他版本的predis客户端。

2. 解压php redis源文件包。

tar -zxvf predis-1.1.9.tar.gz 步骤6 编辑一个文件连接redis。

● 使用redis.php文件连接Redis单机/主备/Proxy集群示例:

<?php

require 'predis/autoload.php';

Predis\Autoloader::register();

$client = new Predis\Client([

'scheme' => 'tcp' ,

'host' => '{redis_instance_address}' , 'port' => {port} ,

'password' => '' ]);

$client->set('foo', 'bar');

$value = $client->get('foo');

echo $value;

?>

● 使用redis-cluster.php连接Redis Cluster集群代码示例:

<?php

require 'predis/autoload.php';

$servers = array(

'tcp://{redis_instance_address}:{port}' );

$options = array('cluster' => 'redis');

$client = new Predis\Client($servers, $options);

$client->set('foo', 'bar');

$value = $client->get('foo');

echo $value;

?>

其中,{redis_instance_address}为Redis实例真实的IP地址/域名,{port}为Redis实例真 实的端口。IP地址/域名和端口获取见步骤1,请按实际情况修改后执行。password为 创建Redis实例时自定义的密码,请按实际情况修改后执行。如果免密访问,请将 password行去掉。

步骤7 执行php redis.php连接Redis实例。

----结束