- 一、codis相关信息
- 1.什么是codis
- 2.使用codis的意义
- 二、codis集群的搭建
- 三、测试
codis是由豌豆荚中间件团队使用Go语言开发,它是一个代理中间件,和redis一样也使用redis协议对外提供服务,当客户端向codis发送指令时,codis负责将指令转发到后面的redis实例来执行,并将返回结果再转回给客户端。codis上挂接的所有redis实例构成一个redis集群,当集群空间不足时,可以通过动态增加redis来实现扩容需求。
在大数据高并发的场景下,单个的redis实例往往会受到内存和cpu利用率等的限制.单个的redis的内存不宜过大,否则就会导致rdb文件过大,进一步导致主从同步时全量同步时间过长,在实例重启恢复时也会消耗很长的数据加载时间,特别是在云环境下,单个实例只能利用单个核心,这单个核心要完成海量的数据存取和管理时工作压力会非常大。于是,redis集群方案应运而生。它可以将众多小内存的redis实例综合起来,将分布在多台机器上的众多cpu细心的计算能力聚集到一起,完成海量的数据存储和高并发操作。Codis就是redis集群的方案之一。
二、codis集群的搭建
在真机中下载codis源代码和go安装包到虚拟机server1中
在指定目录中解压go语言压缩包
在环境变量文件中最后3行添加添加框中内容,并运行命令检测
编写并测试一个go程序检测是否可以运行
创建目录 ($GOPATH是本机所与第三方go项目的目录,codis仅仅只是其中之一)
下载zip解压工具并解压codis源代码
查看解压成功,安装编译需要的以依赖性工具
将解压后的目录移动到创建的目录中,使用make进行编译
快速构建一个单机版测试codis集群,无任何外部组件依赖,在源码中admin文件夹里提供了相关脚本用于快速启动,停止各个组件,提高运维效率
启动codis-dashboard-admin.sh
启动codis-proxy-admin.sh
启动codis-server-admin.sh
启动codis-fe-admin.sh
netstat -antlupe查看端口
查看图形界面
在浏览器中输入虚拟机ip:9090
172.25.75.1:9090,查看图形界面
通过fe添加group
在Proxy栏可以看到我们已经启动的proxy,但Group栏为空,因为我们启动的codis-server并未加入到集群中。
添加Codis Server:在New Group旁的栏中输入1,点击New Group即可添加Codis Server,Add Server旁的栏中输入codis-server地址(端口截图中已框出),添加到Group,点击Add Server
通过fe初始化slot



