首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >微擎 Redis开启,高并发测试

微擎 Redis开启,高并发测试

作者头像
OwenZhang
发布于 2021-12-08 18:02:35
发布于 2021-12-08 18:02:35
4.2K0
举报
文章被收录于专栏:Owen's WorldOwen's World

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``[``'port'``],``redisConfig``[``'timeout'``]);

// 随机一个红包Key

key = this``->build_sn();

for (``i = 1; i <= 10;

{

redis``->lpush(``

}

// 写入到数据库

$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``[``'port'``],``redisConfig``[``'timeout'``]);

// 返回列表的长度 key 被解释为一个空列表,返回 0

if``(``redis``->llen(``this``->result(``

// 移除并返回列表的第一个元素

List = redis``->lpop(``

if``(``intval``(``$List``) > 0){

result = pdo_update(``'redis_test'``, array``(``'num' =>

if (!``empty``(``result``)) return this``->result(``errno = 0, message = 'Get Ok:'``.``List``); else return this``->result(``errno = 0, message = 'Get Error:'``.``

}``else

return this``->result(``

}

生成红包:Redis_setRedPack

拆开红包:Redis_test

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年10月20日,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 1、宝塔安装
  • 2、微擎配置
  • 3、更新微擎缓存
  • 4、查看是否开启成功
  • 5、测试代码
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档