首页 > 其他 > 详细

利用swoole coroutine协程实现redis异步操作

时间:2019-07-08 09:45:57      阅读:179      评论:0      收藏:0      [点我收藏+]
<?php
#注意:可能会遇到这样的现象,用swoole协程的方法访问常规方法添加到redis中的数据,可能访问不到(直接返回NULL)!
这可能是两者采用了
不同的技术标准所致!项目中要统一标准
go(function (){
    $redis = new Swoole\Coroutine\Redis();
    $redis->connect(127.0.0.1, 6379);
    $val = $redis->set(陈培昌,json_encode([age=>21,expertin=>[泰拳,巴西柔术]]));#同样是hmset,常规方法第2个参数是混合类型
var_dump($val); }); go(function (){ $redis = new Swoole\Coroutine\Redis(); 
$redis
->connect(127.0.0.1, 6379);
$val
= $redis->get(陈培昌);
var_dump(json_decode($val)); });

打印结果:

object(stdClass)#8 (2) {
["age"]=>
int(21)
["expertin"]=>
array(2) {
[0]=>
string(6) "泰拳"
[1]=>
string(12) "巴西柔术"
}
}
bool(true)

 

#常规方法

/*把货单项目名称键名加载到redis*/

$li = new mysqli(localhost,root,wenwajiao,taizhouwu);
$sql = "select title,colname from columninfo";
$stmt=$li->query($sql);
$liaogaximaxida = $stmt->fetch_all();
$redis = new Redis();
$redis->connect(127.0.0.1,6379);
for ($i=0;$i<count($liaogaximaxida);$i++)
{
    $saiwa = $liaogaximaxida[$i];
    $redis->hMSet($saiwa[0],[mykey=>$saiwa[1]]);#同样是hmset,常规方法第2个参数是数组类型
}
;

 

利用swoole coroutine协程实现redis异步操作

原文:https://www.cnblogs.com/saintdingspage/p/11149023.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!