您的位置:首页 > 数据库 > Redis

【管我原创不原创,被评论才是好东西】redis实现过程

2017-01-06 10:49 134 查看

Redis的安装

Redis是c语言开发的。

安装redis需要c语言的编译环境。如果没有gcc需要在线安装。Yuminstall gcc-c++

 

安装步骤:

第一步:redis的源码包上传到linux系统。

第二步:解压缩redis。

第三步:编译。make

第四步:安装。makeinstall PREFIX=/usr/local/redis

前端启动:[root@localhostbin]# ./redis-server

后台启动:

把/root/redis-3.0.0/redis.conf复制到/usr/local/redis/bin目录下

[root@localhost redis-3.0.0]# cp redis.conf/usr/local/redis/bin/

修改配置文件:

[root@localhost bin]# ./redis-serverredis.conf

查看redis进程:

[root@localhost bin]# ps aux|grep redis

root     5190  0.1  0.3 33936  1712 ?        Ssl 18:23   0:00 ./redis-server*:6379   

root     5196  0.0  0.1  4356   728 pts/0    S+  18:24   0:00 grep redis

[root@localhost bin]# 

[root@localhost bin]# ./redis-cli

默认连接localhost运行在6379端口的redis服务。

[root@localhost bin]# ./redis-cli -h192.168.25.153 -p 6379

-h:连接的服务器的地址

-p:服务的端口号

Redis五种数据类型

String:key-value(做缓存)

Hash:key-fields-values(做缓存)

List:有顺序可重复

Set:无顺序,不能重复

SortedSet(zset):有顺序,不能重复

架构细节:
(1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.
(2)节点的fail是通过集群中超过半数的节点检测失效时才生效.
(3)客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可
(4)redis-cluster把所有的物理节点映射到[0-16383]slot上,cluster
负责维护node<->slot<->value
Redis
集群中内置了 16384
个哈希槽,当需要在 Redis
集群中放置一个 key-value
时,redis
先对 key
使用 crc16
算法算出一个结果,然后把结果对 16384
求余数,这样每个 key
都会对应一个编号在 0-16383
之间的哈希槽,redis
会根据节点数量大致均等的将哈希槽映射到不同的节点
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐