Centos7-类redis存储系统pika安装
前言
pika 是360 DBA和基础架构组联合开发的类redis 存储系统, 完全支持Redis协议,用户不需要修改任何代码, 就可以将服务迁移至pika;有维护redis 经验的DBA维护pika不需要多少学习成本。
主要解决的是用户使用 Redis 的内存大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。
安装环境介绍
操作系统:CentOS 7.6.1810
pika版本:v3.0.7
安装方式:编译安装
在github上,pika项目有release出对应的二进制,但是都是针对CentOS5、CentOS6,没有CentOS7。编译安装也很简单。
源码编译
# 1、安装依赖库(有一些包epel-release源上才有)
yum -y install epel-release && yum -y install snappy-devel glog-devel gflags-devel
# 2、安装gcc、make,推荐使用gcc4.8以上的版本
yum install gcc-c++ make
# 3、安装git,从github直接拉取代码库,也可以进入release页面下载对应版本的源码
yum -y install git
# 4、clone代码库
git clone https://github.com/Qihoo360/pika.git
cd pika
# 5、查看获取版本标签,找到想要的版本
git tag
# 6、切换到tag的代码位置
git checkout v3.0.7
# 7、使用make进行编译
make
# 8、output目录就是编译出来的二进制文件所在的目录,直接拷贝到想要安装的目录就完成安装了。
cp -rp output /opt/pika
# 9、启动pika
cd /opt/pika
./bin/pika -c ./conf/pika.conf
# 10、测试
redis-benchmark -p 9221
总结
pika 的单线程的性能肯定不如redis, pika是多线程的结构, 因此在线程数比较多的情况下, 某些数据结构(string、hash等)的性能可以优于redis。
pika 肯定不是完全优于redis 的方案, 只是在某些场景下面更适合。根据业务的场景挑选合适的方案。
Pika的数据主要存储在磁盘中,这就使得其在做数据备份时有天然的优势,可以直接通过文件拷贝实现。
当然SSD磁盘是必须的。