基于PhalApi的Redis拓展

前言

先在这里感谢phalapi框架创始人@dogstar,为我们提供了这样一个优秀的开源框架.

编写本次拓展出于的目的是为了解决并不是非常熟悉redis的童鞋能够方便的使用redis进行实际的运用

,对原生的phpredis进行的封装优化良好的注释和例子希望能提供更好的帮助!

注:本拓展并没有开发完成,也没进行严格的测试,此版本为还处于开发阶段的鉴赏版.

附上:

官网地址:http://www.phalapi.net/

开源中国Git地址:http://git.oschina.net/dogstar/PhalApi/tree/release

安装配置redis以及phpredis

基于centos6.5

//下redis解压安装 wget http://download.redis.io/releases/redis-2.8.17.tar.gz tar zxvf redis-2.8.17.tar.gz cd redis-2.8.17 make make test make install //生成6379端口以及配置文件 cd utils ./install_server.sh Please select the redis port for this instance: [6379] Please select the redis config file name [/etc/redis/6379.conf] Please select the redis log file name [/var/log/redis_6379.log] Please select the data directory for this instance [/var/lib/redis/6379] Please select the redis executable path [/usr/local/bin/redis-server] //对配置文件进行配置 vi /etc/redis/6379.conf databases 100 #可以使用的库的数量修改16为100 masterauth xxxxxxxxxxxxx #连接 master 的认证密码 requirepass woyouwaimai76 #连接此redis的连接密码 :wq //修改关闭redis需要密码 vi /etc/rc.d/init.d/redis_6379 $CLIEXEC -p $REDISPORT -a woyouwaimai76 shutdown #stop redis需要密码 //重启redis service redis_6379 restart //添加到系统启动项 chkconfig redis_6379 on //下载phpredis解压安装 wget https://github.com/nicolasff/phpredis/archive/master.zip unzip master.zip -d phpredis cd phpredis/phpredis-master phpize ./configure make && make install //在php.ini中注册phpredis extension = redis.so //测试 <?php $auth = 'xxxxxxxxx'; $source = '127.0.0.1'; $host = '6379'; $redis = new Redis(); echo $redis->connect($host) ? "$host connect" : "$host fail"; if($auth){ echo $redis->auth($auth) ? " auth success" : " auth fail"; }

注册配置文件在Config.app文件下面

return array( //Redis配置项 'redis' => array( //Redis缓存配置项 'servers' => array( 'host' => '127.0.0.1', //Redis服务器地址 'port' => '6379', //Redis端口号 'prefix' => 'developers_', //Redis-key前缀 'auth' => 'woyouwaimai76', //Redis链接密码 ), // Redis分库对应关系 'DB' => array( 'developers' => 1, 'user' => 2, 'code' => 3, ), //使用阻塞式读取队列时的等待时间单位/秒 'blocking' => 5, ), );

在init入口文件注册redis拓展

配置方式非常简单只需要把拓展下载下来放入Library文件内即可,然后就可以使用如下方法进行实例

//redis链接 DI()->redis = new Redis_Lite(DI()->config->get('app.redis.servers'));

开始使用

//存入永久的键值队 DI()->redis->set_forever(键名,值,库名); //获取永久的键值队 DI()->redis->get_forever(键名, 库名); //存入一个有时效性的键值队,默认600秒 DI()->redis->set_Time(键名,值,有效时间,库名); //获取一个有时效性的键值队 DI()->redis->get_Time(键名, 库名); //写入队列左边 DI()->redis->set_Lpush(队列键名,值, 库名); //读取队列右边 DI()->redis->get_lpop(队列键名, 库名); //读取队列右边 如果没有读取到阻塞一定时间(阻塞时间或读取配置文件blocking的值) DI()->redis->get_Brpop(队列键名,值, 库名); //删除一个键值队适用于所有 DI()->redis->del(键名, 库名); //自动增长 DI()->redis->get_incr(键名, 库名); //切换DB并且获得操作实例 DI()->redis->get_redis(键名, 库名);

phalapi init.php,基于PhalApi的Redis拓展 (由@喵了个咪提供)相关推荐

  1. 基于PhalApi的DB集群拓展 V0.1bate

    基于PhalApi的DB集群拓展 V0.1bate 前言 先在这里感谢phalapi框架创始人@dogstar,为我们提供了这样一个优秀的开源框架. 编写本次拓展出于的目的是解决大量数据写入分析的问题 ...

  2. phalapi-进阶篇7(使用缓存以及用redis拓展解决实际问题)

    phalapi-进阶篇7(使用缓存以及用redis拓展解决实际问题) 前言 先在这里感谢phalapi框架创始人@dogstar,为我们提供了这样一个优秀的开源框架. 当我们在开发一个项目时,我们可能 ...

  3. centos环境访问php显示源码,CentOS 6.8 搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展...

    一.安装Redis 1.下载redis源码包,将源码包放到/usr/local/src/目录下 这里用的是redis-4.0.2.tar.gz 2.进入src/目录 cd /usr/local/src ...

  4. 基于Jedis实现Redis分片的理解

    2019独角兽企业重金招聘Python工程师标准>>> 基于Jedis实现Redis分片的理解 博客分类: 缓存 一 理解前提 分片是为了把鸡蛋放到几个篮子里,而Dynamo型的分片 ...

  5. 基于Codis的Redis集群部署

    Codis是基于代理的高性能Redis集群方案,使用Go语言进行开发,现在在在豌豆荚及其它公司内已经广泛使用,当然也包括我们公司. Codis与常见的Redis集群方案对比. 在搭建的时候,个人觉得R ...

  6. Redis Primer(1)基于JedisPool的Redis hset并发性能测试 - @钟超 · 技术博客专栏 - 博客频道 - CSDN.NET...

    Redis Primer(1)基于JedisPool的Redis hset并发性能测试 - @钟超 · 技术博客专栏 - 博客频道 - CSDN.NET Redis Primer(1)基于JedisP ...

  7. k8s redis集群_基于K8S部署redis哨兵集群

    本 文 主 要 内 容 什么是Kubernetes分布式容器管理平台 PaaS平台redis-sentinel集群架构简介 PaaS平台部署redis哨兵集群 redis-sentinel容器测试及验 ...

  8. redis客户端连接数量_实战解析无所不知的Redis拓展应用——Info,进阶学习,无所不能...

    前言 学习是一个持续的过程.像咱们一直在更新的Redis学习内容,由基础结构,到原理应用,再到集群搭建,了解的够充分了,咱们接着又介绍Redis拓展应用,将知识面拓宽,毕竟技术都是相通的,只有灵活运用 ...

  9. [Intel Edison开发板] 04、Edison开发基于nodejs和redis的服务器搭建

    一.前言 intel-iot-examples-datastore 是Intel提供用于所有Edison开发板联网存储DEMO所需要的服务器工程.该工程是基于nodejs和redis写成的一个简单的工 ...

最新文章

  1. android 如何把回调赋值另一个_android 两个界面回调实现
  2. Redis应用案例,查找某个值的范围(转)
  3. CSS 公共样式分享
  4. Linux学习总结(9)——Linux 新手必知必会的 10 条 Linux 基本命令
  5. php判断完整数,PHP的几个常用数字判断函数代码
  6. python杂记-读取png图像文件头数据
  7. sqlite.interop.dll 请确保此文件可以访问_不用数据线,一秒让电脑和iphone快速传文件...
  8. 汇编语言(王爽第三版) 实验5编写、调试具体多个段的程序
  9. Python之快速排序算法实现(二)
  10. 10年产品人总结了9条血泪教训
  11. 《Microsoft SQL Server 2008 Internals》读书笔记--目录索引
  12. 25.软件磁盘阵列(Software RAID)
  13. 《Android程序设计》一3.8 Android应用打包:.apk文件
  14. sd卡驱动分析之core
  15. 李白的诗: 南陵别儿童入京
  16. PEST分析顺丰服务需求_顺丰内外部环境分析.doc
  17. mcv 与mvvm 浅谈
  18. 米修在线后台管理系统
  19. Python 的IDE——PyCharm
  20. SpringBoot中集成Redis实现对redis中数据的解析和存储

热门文章

  1. linux下调整sga,SGA和PGA的分配原则及更改大小
  2. 白酒上甑工艺工业机器人系统研究
  3. ROS机器人星火计划公开课总结
  4. 电脑技巧:Win10任务管理器知识介绍,赶快来看一看吧
  5. SSM整合之Mybatis笔记( MyBatis获取参数值的两种方式(重要))(P020—P025)
  6. 分析:以太坊的合并后经济学
  7. 如何用project工具制定和跟踪项目进度,分析进度偏差
  8. 戴尔服务器bmc安装系统,戴尔服务器BMC(IDRAC接口)安装系统
  9. gg修改器免root蓝秦云,gg修改器免root修改教程
  10. 统计分数 读取txt文件