最近做一款直播的项目,需要用到redis的geohash 地理位置的算法,做附近的人这个功能,但是在项目开发的初期,一直用的redis3.0版本,但是geohash只支持redis3.2的,怎么办呢?只好升级redis,可是小编今天花费了一上午的时间也没有找到redis3.2的php扩展,官方也没有提供该扩展(头痛),但是最终小编找到了一个完美的解决办法。只能说小编以前见识短浅。
1.Predis主要功能
支持各个版本的 Redis (从 2.0 到 3.0 以及 unstable)使用哈希方式或用户自定义方式进行集群中节点的客户端分片支持 Redis-cluster(集群) (Redis >= 3.0).支持主/从结构的读写分离支持已知的所有 Redis 客户端命令
2.使用方式
下载地址:https://github.com/nrk/predis
3.引入项目
use \Predis\Client;
import('Predis.autoload');
$redis=new Client();
4.操作redis
注:
predis,是PHP版本写的redis client,采用socket连接
php extension redis是PHP原生扩展,C写的
由于没有进行过大数据压测,不能准确告诉你性能差异。但基本上扩展redis肯定比predis更好。