• 联系我们
  • 地址:湖北武汉三环科技园
  • 电话:159116031100
  • 传真:027-68834628
  • 邮箱:mmheng@foxmail.com
  • 当前所在位置:首页 - java培训
  • 回馈系列4-Nosql之Redis+PHP[更新完毕
  •   redis是一个key-value存储系统。和 Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

      ubuntu 系统下最后一步需要管理员权限,并且可用可不用,不用的话,redis的执行程序都在你的安装目录下,服务端为redis-server,客户端为 redis-cli,若执行了最后一步,这两个文件会被复制到/usr/local/bin/目录下,该目录只有管理员才有写权限,所以需要加sudo获得管理员权限。

      这三歩主要是添加redis的配置文件和相关数据的文件夹,etc将会被用来存配置文件,db存redis的数据库,因为都在/usr/local目录下,所以以后启动redis服务的时候都要加sudo,否则无法写入数据到该文件夹中去,这个文件夹的不固定,可放其他你喜欢的地方。

      下面编辑redis的配置文件,默认也是在redis的安装程序所在目录,名字是f,一般使用要改的地方不多,我就不详细说明了,有兴趣的可以去网上搜redis的配置文件中文详解,没多度。

      #改为yes使得redis以非守护进程的方式执行,否则默认每5秒返回个信息到std窗口,就是默认输出窗口,黑底白字那个。

      #redis虽说和memcache类似都是内存数据库,但是它有快照和日志两种方式,满足一定条件即将数据写入磁盘中使数据获得持久化

      #的配置dump.rdb是默认的快照方式 以一定时间和数据为条件 满足即将内存中所有redis数据写入磁盘

      下面安装redis的PHP客户端,官网推荐phpredis,这是一个以php扩展方式写的redis的PHP端。

      接着上次的来,一般你在什么目录下使用git clone命令,phpredis就会被下载到什么目录,这是一个redis的PHP客户端,以PHP扩展的形式安装。

      随便弄个页面执行phpinfo()查看一下phpredis是否安装成功了(phpinfo这个页面最好常备着)。

      Redis有多种数据结构,我比较常用的有string,hash,list,set,sorted set,还有pub/sub、transactions之类的我不常用,简单介绍一下,就不多说了,有兴趣可以自己做。

      自动排序的set结构,升级版的set结构,他比set多了一个值,用来排序,你可以把值当作优先级来使用。

      这个东东貌似是建立一个类似通道的东西,一个人建立,一个人订阅,然后就可以互相发信息了,你可以尝试做了聊天室。

      自带数字的set结构,比如你把时间戳赋予每个信息id会如何?任何信息的id被修改、添加、删除,只要修改zset集合中对应id的时间戳,然后按时间戳排序,你就知道每个信息最后被操作的时间了。同样新浪微博中,海量数据的排序也大量用到了zset。

      到这,基本的数据类型的简单用法都介绍完了,有兴趣的去list下面的传送自己玩玩,眼过千遍不如手过一遍,画家再怎么能说看的画再多自己不会画也是白搭,程序员什么都懂,实际操作什么都不会也一样是白扯,说穿了,还是要手底下见真章的。这篇文章估计不会有太大修改了,再有新内容会在新一篇中发出。

      推荐: