标签:安装 空间 ffffff www. bar mirrors redis数据类型 div centos7
Redis(Remote Dictionary Server)官网:https://redis.io/
Redis命令:https://redis.io/commands
Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理。 它支持数据结构,如字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志,具有半径查询和流的地理空间索引。 Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel提供高可用性并使用Redis Cluster自动分区。
1.1 Redis 发展历史
1、最开始使用本机内存的NativeCache(NativeCache无法分布式共享),随着网站规模越大,我们需要一个分布式的缓存产品,Memcache诞生。
2、随着memcache缓存大行其道,互联网规模进一步扩大,对应用程序性能要求越来越高以及应用场景的越来越多 【09年】,比如内存数据库,异构化消息队列 等等,而原来市面上的memcache 暴露了以下几个缺点:
无法做到规模化的集群,memcache可以使用 一致性hash 的方式做到一个简单的memcahce集群,非常依赖于客户端实现,也并非无损的。
set username jack hash(username)=8亿 ,沿着顺时针走,碰到的第一个server节点就是要存放的节点。。。
1.2 Redis 特点
Redis数据类型 | String | Bitmap | List(双端队列) | Set | Geo | Hash | HyperLogLogs | Stream | SortetSet(SkipList) |
C#数据类型 | String | BitArray | (LinkedList+Stack+Queue+List) | HashSet | --- | Dictionary | --- | --- | SortDictionary(红黑树) |
集群
Redis自带的Cluster集群模式,Sentinel 和 第三方豌豆荚的Codis集群搭建。
2、使用 CentOS 和 Docker 快速部署
虚拟机安装步骤:https://www.cnblogs.com/wyt007/p/10295834.html
2.1、centos 平台的部署
首先到Redis官网获取Redis最新下载地址:http://download.redis.io/releases/redis-5.0.3.tar.gz
然后在CentOS7上面进行安装
mkdir /data cd /data wget http://download.redis.io/releases/redis-5.0.3.tar.gz tar xzf redis-5.0.3.tar.gz mv redis-5.0.3 redis cd redis make
如果出现 gcc:命令未找到 安装gcc并重新执行 make
yum -y install gcc automake autoconf libtool make //如果以上命令出现[Errno 256] No more mirrors to try.执行下面命令再重新安装gcc yum clean all
如果出现:致命错误:jemalloc/jemalloc.h:没有那个文件或目录,则执行下方命令
make MALLOC=libc
cd /data/redis/src/ cp redis-cli ../ cp redis-server ../
[root@localhost src]# cd /data/redis/
[root@localhost redis]# ./redis-server ./redis-conf
netstat -tlnp
[root@localhost ~]# cd /data/redis/ [root@localhost redis]# ./redis-cli 127.0.0.1:6379> set username jack OK 127.0.0.1:6379> get username "jack" 127.0.0.1:6379> dbsize (integer) 1 127.0.0.1:6379> keys * 1) "username"
quit
redis.conf 这个文件里面 daemonize 改成 yes
Redis启动完成后是无法进行外网访问的,因此我们需要修改redis.conf
protect-mode 保护模式
bind 绑定网卡接口
bind 127.0.0.1 => bind 0.0.0.0 protected-mode yes => protected-mode no
现实场景:redis是生产内网部署,对外不开放端口。。。
修改redis.conf 默认参数 # requirepass foobared
连接之后命令 auth <password>
rdb 修改redis.conf默认参数 dir ./ 文件夹路径
logfile 修改redis.conf默认参数 logfile "" 文件名称,可以改成“redis.log”
修改redis.conf默认参数 daemonize no ,改成 daemonize yes 这个问题 上面有写到了,启动redis 的时候会遇到问题
会生成pid文件 /var/run/redis_6379.pid 存放进程号
2.2、Docker上进行部署
Docker 安装步骤:https://www.cnblogs.com/hsj007/p/10809398.html
service docker start
docker ps
我们可以看到容器内是空的,我们接下来前往DockerHub下载安装redis(部分内容需要FQ)
我这里是因为已经在虚拟机安装了Redis,占用了redis的6379端口,所以用外网6378端口映射docker6379端口
安装完成会自动启动
docker run --name some-redis -p 6378:6379 -d redis
标签:安装 空间 ffffff www. bar mirrors redis数据类型 div centos7
原文地址:https://www.cnblogs.com/hsj007/p/10809530.html