在之前的文章中,我们了解了如何在Windows的服务器系统环境中安装PHP的memcached扩展服务来加速PHP脚本速度,不过很多站长还是希望安装Redis来实现PHP缓存加速。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

一、windows安装Redis步骤

1、要实现PHP的缓存机制,需要首先在本地安装Redis服务,我们可以去github官网上下载Redis,可以选择安装版还是非安装版(压缩文件)。

2、windows+R ,cmd打开命令窗口,切换到安装好的Redis目录(这里我的是默认安装,目录为:C:\Program Files\Redis),命令如下:redis-server redis.windows.conf

出现下图所示即安装成功:

02c5bc14b88c0772cfee7f3381ab7500.png

3、设置Redis在Windows本地开机自启动服务,命令窗口执行命令如下:redis-server --service-install redis.windows.conf

查看本地服务是否启动,出现下图所示即自启动成功:

7496573fdfda97f25bdc8fc628d8d7f8.png

4、开启、关闭、卸载Redis服务命令

命令窗口执行开启命令:redis-server --service-start

命令窗口执行停止命令:redis-server --service-stop

命令窗口执行卸载命令:redis-server --service-uninstall

当安装好Redis第一次启动测试是否安装成功时有可能会出现以下问题(如下图所示):

be3422dcb728c85c3bfc3858fb545a53.png

解决办法:命令窗口按顺序执行以下命令:

C:\Program Files\Redis>redis-cli.exe

127.0.0.1:6379>shutdown

not connected>exit

C:\Program Files\Redis>redis-server.exe redis.windows.conf

即可看到启动成功!

二、安装PHP的Redis扩展

1、和安装memcached扩展一样,我们首先要查看自己的PHP版本信息,如下图

9d2ce363dfed54f2117ca6d95854af1c.png

2、根据PHP版本号,编译器版本号和CPU架构,选择合适的Redis扩展

这里的PHP版本为5.6.16,VC11 ,X86编译以及TS线程安全,所以,选下面的扩展版本:

选择php_redis-2.2.7-5.6-ts-vc11-x86.zip和php_igbinary-2.0.7-5.6-ts-vc11-x86.zip

下载地址:

可以根据这两个链接来查找对应的版本:

redis : https://windows.php.net/downloads/pecl/releases/redis/

igbinary: https://windows.php.net/downloads/pecl/releases/igbinary/

3、将以上两个文件下载解压缩后,将php_redis.dll和php_igbinary.dll拷贝至php环境的ext目录下

4、在php.ini文件中任意位置增加以下代码(注意:extension=php_igbinary.dll一定要放在extension=php_redis.dll的前面,否则此扩展不会生效):; php_redis

extension=php_igbinary.dll

extension=php_redis.dll

5、重新启动Apache,查看phpinfo()信息,如下图表示扩展安装成功

8f909a300a986ff81805916b3068aa2b.png

三、PHP简易Redis扩展应用实例<?php

//连接本地的 Redis 服务

$redis = new Redis();

$redis->connect('127.0.0.1', 6379);

echo "Connection to server sucessfully";

echo "
";

//设置 redis 字符串数据

$redis->set("name", "xiaoming");

// 获取存储的数据并输出

echo "Stored string in redis:: " . $redis->get("name");

?>

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐