博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于PhalApi的Redis拓展
阅读量:6228 次
发布时间:2019-06-21

本文共 2708 字,大约阅读时间需要 9 分钟。

hot3.png

#基于PhalApi的Redis拓展

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

编写本次拓展出于的目的是为了解决并不是非常熟悉redis的童鞋能够方便的使用redis进行实际的运用 ,对原生的phpredis进行的封装优化良好的注释和例子希望能提供更好的帮助!

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

附上:

官网地址:

开源中国Git地址:

##安装配置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     //测试      
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拓展##

//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(键名, 库名);

更多使用方法请参考Redis_Lite文件

转载于:https://my.oschina.net/wenzhenxi/blog/599858

你可能感兴趣的文章
IXWebHosting的URL转向设置
查看>>
octopress的一些总结
查看>>
Linux- systemd
查看>>
TCP编程的迷惑
查看>>
【转】这个“哭喊着要进步”的电子工程师一路怎么走过来的~
查看>>
使用Lambda实现递归
查看>>
opengl overlay plane
查看>>
静态库和动态库
查看>>
近来有不少博友向本人提向,鉴于本站的邮件系统不是很好用,建议大家加入本人的QQ群...
查看>>
[转] SQL Server 批量 停用/启用 外键约束
查看>>
Bug管理工具
查看>>
Django performance
查看>>
touch — 设定文件的访问和修改时间
查看>>
Spark集群模式&Spark程序提交
查看>>
package-info.java(转载)
查看>>
Hash
查看>>
QuickFlow之动态子流程
查看>>
通常每个套接字地址 (协议/网络地址/端口) 只允许使用一次
查看>>
javascript使回车键替代tab键的光标移动功能
查看>>
对XML的收集2
查看>>