PHP redis 批量操作
参考网站
phpredis扩展 :https://github.com/phpredis/phpredis#pconnect-popen
命令参考:http://doc.redisfans.com redis
redis 操作异常总结
1.获取的key存在,使用了错误的方法,如:string 用hashes的方法,返回false。
2.获取不存在的key false。
3.设置不存在的key,写入值,返回1,如果存在替换,返回0。使用hSetNx类型的函数,存在返回false不设置值,反之true设置值。
redis 批量测试
// 批量
$redis = new \Redis();
$redis->pconnect('127.0.0.1');
$redis->auth('111111');
$ts = microtime(true);
var_dump($ts);
$redis->multi();
for ($i=0; $i < 1000; $i++) {
$redis->set('key1', 'val1');
$redis->get('key1');
$redis->del('key1');
}
$redis->exec();
$df = microtime(true) - $ts;
var_dump($df);
// var_dump($ret);
// die;
// 单个
$redis = new \Think\Cache\Driver\Redis();
$ts = microtime(true);
var_dump($ts);
for ($i=0; $i < 1000; $i++) {
$redis->set('key1', 'val1');
$redis->get('key1');
$redis->del('key1');
}
$df = microtime(true) - $ts;
var_dump($df);
die;
结果 批量: float(1.11732006073) 单个: float(1.2670619487762) 可以在phpredis扩展使用中看出批量和单个并没有太大时间上的
差别和http://my.oschina.net/u/2273085/blog/419920,此网友结论相差很大,也许是PHP自身的问题,不得而知。
redis 操作常规返回情况
// redis 获取key类型错误返回false
$keyString = '13999999999';
$keyHash = 'ThumbnailServerList';
$redisCache = new \Think\Cache\Driver\Redis();
$return = $redisCache->hGetAll($keyString, $value);
var_dump($return);
$return = $redisCache->hGetAll($keyHash, $value);
var_dump($return);
$return = $redisCache->get($keyString, $value);
var_dump($return);
$return = $redisCache->get($keyHash, $value);
var_dump($return);
die;
结果:bool(false) bool(false) string(43) "9c8d83f5890611e45538a744eb1b036b156790b7533" bool(false) 获取类型错误返回false,不存在也是false。
PHP redis 批量操作的更多相关文章
- 第四节:Geo类型介绍以及Redis批量操作、事务、分布式锁
一. Geo类型 1. 类型说明 Geo 是 Redis 3.2 版本后新增的数据类型,用来保存兴趣点(POI,point of interest)的坐标信息.可以实现计算两 POI 之间的距离.获取 ...
- redis批量操作
由于redis没有批量删除命令,所以借助xargs redis-cli -h 127.0.0.1 keys testdata_2018* |xargs redis-cli -h 127.0.0.1 d ...
- Linux+Redis实战教程_day02_消息订阅与发布_多数据库_redis批量操作-事务_redis持久化
5.扩展知识-消息订阅与发布(了解) 订阅新闻,新闻发布 subscribe channel:订阅频道,例:subscribe mychat,订阅mychat这个频道 psubscribe chann ...
- 【spring boot】spring boot 基于redis pipeline 管道,批量操作redis命令
spring boot 2.x 使用RedisTemplate 操作 =================================== 1.pom.xml <!--spring2.0集成r ...
- Redis数据结构详解(一)
前言 Redis和Memcached最大的区别,Redis 除啦支持数据持久化之外,还支持更多的数据类型而不仅仅是简单key-value结构的数据记录.Redis还支持对这些数据类型做更多的服务端操作 ...
- Redis数据结构
Redis数据结构 Redis数据结构详解(一) 前言 Redis和Memcached最大的区别,Redis 除啦支持数据持久化之外,还支持更多的数据类型而不仅仅是简单key-value结构的数据 ...
- C#之Redis为所欲为
一 Redis是一种支持多种数据结构的键值对数据库 1.1Redis下载地址 :https://github.com/MicrosoftArchive/Redis 建议下载 .msi结尾的应用程序进行 ...
- C#之Redis所欲为
一 Redis是一种支持多种数据结构的键值对数据库 1.1Redis下载地址 :https://github.com/MicrosoftArchive/Redis 建议下载 .msi结尾的应用程序进行 ...
- Redis的数据类型之String
Redis主要支持的数据类型有5种:String ,Hash ,List ,Set ,和 Sorted Set. Redis数据类型String string类型在redis中是最常见的类型,valu ...
随机推荐
- java在图片上添加文字
业务需求要在图片上添加水印.下面粘出代码供自己和大家分享 package com.pro.drawTextOnImg; import java.awt.Color; import java.awt.F ...
- solr 4.4添加索引是新手容易遇到的问题
solr 4.4添加索引是新手容易遇到的问题异常一.Exception in thread "main" java.lang.NoClassDefFoundError: org/a ...
- 2D空间中判断一点是否在三角形内
要注意如果是XY坐标轴的2D空间,要取差乘分量z而不是y. 实现原理是,将三角形ABC三个边(AB,BC,CA)分别与比较点判断差乘,如果这3个差乘结果表示的方向一致,说明就在三角形内. 效果: 代码 ...
- wkhtmltopdf 安装使用笔记(CentOS6)
1. 在官网下载安装文件. http://wkhtmltopdf.org/ 安装时如果提示某些库找不到的话,使用yum安装即可. 2. 命令行测试 $ wkhtmltopdf http://news. ...
- 在iOS中使用OpenSSL的Public Key 进行加密
这几天一直潜心于iOS开发,刚好把遇到的问题都记录一下.这次遇到的问题就是如果根据得到的Public Key在iOS 客户端对用户名和密码进行加密. Public Key如下: -----BEGIN ...
- 显示Class 'Think\Controller\FuController' not found和Call to a member function assign() on a non-object 的错误问题
Class 'Think\Controller\FuController' not found 错误位置 FILE: D:\wamp\www\tinkphp\Application\Come\Cont ...
- 复旦高等代数 II(15级)思考题
1.设 $f(x)=x^n+a_{n-1}x^{n-1}+\cdots+a_1x+a_0$ 是整系数首一多项式, 满足: $|a_0|$ 是素数且 $$|a_0|>1+\sum_{i=1}^{n ...
- 当程序报无法复制dll的时候
当修改程序后,重新编译项目时经常会碰见"无法复制dll到指定路径"的问题.此时,打开任务管理器,关闭所有JP.VDS开头的进程,再重新编译项目即可
- 22.mongodb副本集集群
软件版本64位: $ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.0.tgz mongo ...
- Snipaste
http://files.cnblogs.com/files/hwd13/Snipast.zip