1、宝塔安装
软件管理-PHP-设置-安装扩展-redis

2、微擎配置
文件:​data/config.php​

$config[‘setting’][‘cache’] = ‘redis’; [35行左右] 缓存改为redis。

最下面加上

// ————————– CONFIG REDIS ————————— //

$config[‘setting’][‘redis’][‘server’] = ‘127.0.0.1’;//如果redis服务器在别的机器,请填写机器的IP地址。

$config[‘setting’][‘redis’][‘port’] = 6379;

$config[‘setting’][‘redis’][‘pconnect’] = 0;

$config[‘setting’][‘redis’][‘timeout’] = 1;

$config[‘setting’][‘redis’][‘auth’] = ‘iwonmo’; //微擎

$config[‘setting’][‘redis’][‘requirepass’] = ‘iwonmo’;//人人用这个

auth 配置需要到redis的配置文档里进行配置,在微擎里如上定义只是方便引用。

3、更新微擎缓存
微擎后台-系统-更新缓存

4、查看是否开启成功
微擎后台-站点-性能优化

5、测试代码
public function build_sn(){
$yCode = array“(“’A’“, ‘B’“, ‘C’“, ‘D’“, ‘E’“, ‘F’“, ‘G’“, ‘H’“, ‘I’“, ‘J’“);
$orderSn = $yCode“[rand(0,9)] . strtoupper“(“dechex“(“date“(“’m’“))) . date“(“’d’“) . substr“(time(), -5) . substr“(microtime(), 2, 5) . sprintf(“’%02d’“, rand(0, 99));
return $orderSn“;
}
public function doPageRedis_setRedPack(){
global $_W“;
$redisConfig = $_W“[“”config”“][“’setting’“][“’redis’“];
$redis = new Redis();
$redis“->pconnect(“$redisConfig“[“’server’“], $redisConfig“[“’port’“],“$redisConfig“[“’timeout’“]);
// 随机一个红包Key
$key = $this“->build_sn();
for (“$i = 1; $i <= 10; $i“++)
{
$redis“->lpush(“$key“, $i“);
}
// 写入到数据库
$RedPack_data = array“(
‘num’ => 10,
);
$result = pdo_insert(“’redis_test’“, $RedPack_data“);
// 返回前端信息 – 抢红包
if (!“empty“(“$result“)) {
echo “id:”“.pdo_insertid().“” RadKey:”“.“$key“;
}“else“{
echo “RadPack:Error”“;
}
}
public function doPageRedis_test(){
global $_W“,“$_GPC“;
$redisConfig = $_W“[“”config”“][“’setting’“][“’redis’“];
$redis = new Redis();
$redis“->pconnect(“$redisConfig“[“’server’“], $redisConfig“[“’port’“],“$redisConfig“[“’timeout’“]);
// 返回列表的长度 key 被解释为一个空列表,返回 0
if“(“$redis“->llen(“$_GPC“[“’RadKey’“]) == 0) return $this“->result(“$errno = 0, $message = ‘No Pack’“);
// 移除并返回列表的第一个元素
$List = $redis“->lpop(“$_GPC“[“’RadKey’“]);
if“(“intval“(“$List“) > 0){
$result = pdo_update(“’redis_test’“, array“(“’num’ => $List“-1), array“(“’id’ => $_GPC“[“’id’“]));
if (!“empty“(“$result“)) return $this“->result(“$errno = 0, $message = ‘Get Ok:’“.“$List“); else return $this“->result(“$errno = 0, $message = ‘Get Error:’“.“$List“);
}“else
return $this“->result(“$errno = 1, $message = ‘Error:High incidence of complications’“,“’llen(RadKey) == 0’“);
}

 

生成红包:Redis_setRedPack

拆开红包:Redis_test

POST:id=[红包ID]&RadKey=[RdisListKey]

使用:访问Redis_setRedPack创建红包,会返回ID和RdisListKey。继而访问Redis_test拆开红包。

www.npspro.cn软师兄
软师兄 » 微擎配置文件中开启 Redis,高并发测试
50T免费网盘资源大集合【持续更中~~~~】:点击查看