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实例。
----结束