Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis是目前应用最广泛的内存数据存储技术,相比之前的Memcached,Redis支持更为丰富的数据结构(hashes, lists, sets等),同时还支持数据持久化。
另外,Redis还提供了一些类数据库的特性,比如事务,HA,主从同步。兼具缓存系统和数据库特性,Redis有着丰富的应用场景。Redis由Salvatore Sanfilippo开发,2010年3月15日起,Redis的开发工作由VMware主持,2013年5月开始,Redis的开发由Pivotal赞助。
 
官网地址:https://redis.io/  在线测试:http://try.redis.io/

Redis特性

1 支持持久化

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

2 数据类型丰富

Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

3 主从数据备份

Redis支持数据的备份,即master-slave模式的数据备份,可以实现主从数据同步。

4 读写性能优异

Redis提供了极高的读写性能,读的速度是110000次/s,写的速度是81000次/s 。

5 操作原子性

Redis中,单个操作是原子性的。多个操作也支持事务操作,通过MULTI和EXEC指令包起来。但事务不能终止后续执行回滚。

6 发布订阅模式

Redis支持发布订阅(pub/sub)消息通信模式,发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。

7 多语言API支持

Redis支持多种语言API操作,可以通过各种主流语言访问读写Redis服务器来实现相应的功能。比如Java,C#,PHP等。

8 数据自动过期

Redis可以设置数据过期时间,保证了数据的适时清理,避免大量无用低效数据占领内存造成浪费。

下面为大家介绍Docker环境下Redis的安装过程。

查看仓库

打开https://hub.docker.com/, 搜索Redis,进入Detail,可以看到Redis镜像的相关版本信息和启动说明。

拉取镜像

进入Docker命令行,执行 docker search redis 查看docker hub中的redis仓库,如下图,第一个就是官方版本库,我们接下来就拉取这个版本。

执行 docker pull redis:3.2 命令,拉取Redis,这里我们选择3.2版本。

命令执行完成之后,通过 docker images 命令查看下载的redis镜像。

如下图所示,镜像已经拉取下来了,由于我之前已经拉取过,所以这个日期是两星期前。

启动容器

执行命令 docker run --name myredis -d redis:3.2 运行容器。然后通过 docker ps 查看容器是否启动成功。

连接容器

docker run -it --link myredis:redis --rm redis redis-cli -h redis -p 6379
执行以上命令连接Redis,连接成功之后,进行简单的插入测试,验证连接成功。如下图所示。

容器启动参数说明

docker run --name some-redis -d redis

-- name 给启动的容器一个可识别的名称

-d 以后台进程的方式运行

用docker inspect 镜像id 可看到镜像的相关信息,直接用上述命令启动默认暴露6379端口, 正常情况下都是不需要修改的。

如果需要添加持久化仓库

docker run --name some-redis -d redis redis-server --appendonly yes

数据默认存储在VOLUME /data目录下,使用--volumes-from some-volume-container 或者 -v /docker/host/dir:/data 可实现挂载

如果应用需要连接redis

docker run -it --link some-redis:redis --rm redis redis-cli -h redis -p 6379

如果想使用自己的配置文件启动redis,则在其基础上写一个dockerfile

FROM redis
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]

或者在启动命令中修改配置

docker run -v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf --name myredis redis redis-server /usr/local/etc/redis/redis.conf

其他安装方式

为了简化安装配置,本文主要介绍的是Docker下Redis的安装方式。

其他方式的安装教程,可以参考一下教程,不在重复。

http://www.runoob.com/redis/redis-install.html


作者:朝雨忆轻尘
出处:https://www.cnblogs.com/xifengxiaoma/
版权所有,欢迎转载,转载请注明原文作者及出处。

Redis笔记(一):Redis安装教程的更多相关文章

  1. Redis笔记 -- make编译安装报错记录2则(一)

    1.Redis的获取与安装,目前最新稳定版本为4.0.10 Redis:  https://redis.io/download GitHub:  https://github.com/antirez/ ...

  2. redis在windows下安装教程

    安装过程 1.首先先把下载的压缩包解压到一个文件夹中2.打开cmd指令窗口3.输入你刚才解压的文件路径4.然后输入redis-server redis.windows.conf 命令接下来部署Redi ...

  3. postman笔记1--postman的安装教程

    一.postman插件的安装 第一步:首先在网上下载postman插件的安装包,下载到自己的本地进行解压(如果懒得去下载的同学,可以根据网盘分享的安装包去下载:链接:https://pan.baidu ...

  4. 详细讲解 Redis 的两种安装部署方式

    Redis 是一款比较常用的 NoSQL 数据库,我们通常使用 Redis 来做缓存,这是一篇关于 Redis 安装的文章,所以不会涉及到 Redis 的高级特性和使用场景,Redis 能够兼容绝大部 ...

  5. redis相关笔记(三.redis设计与实现(笔记))

    redis笔记一 redis笔记二 redis笔记三 1.数据结构 1.1.简单动态字符串: 其属性有int len:长度,int free:空闲长度,char[] bur:字符数组(内容) 获取字符 ...

  6. Redis安装教程

    1. Linux下Redis安装教程 (1)安装 #tar xf redis-2.6.14.tar.gz #cd redis-2.6.14 #make #make install (2)配置 修改re ...

  7. Redis安装教程及可视化工具RedisDesktopManager下载安装

    Redis安装教程: 1. Windows下安装教程: 下载:https://github.com/MSOpenTech/redis/releases Redis 支持 32 位和 64 位.这个需要 ...

  8. Redis学习笔记(1):Redis的说明与安装

    Redis学习笔记(1):Redis说明的安装 说明 什么是Redis REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-va ...

  9. Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试

    文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...

随机推荐

  1. 【翻译】JavaScript循环和作用域

    我的翻译小站:https://www.zcfy.cc/article/javascript-loops-and-scope 翻译原文链接:https://flaviocopes.com/javascr ...

  2. (线段树 && 字符串的处理)codeforces -- 570C

    链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=87813#problem/J Description Daniel has a s ...

  3. [笔记]学习EBS建议有的知识

    http://f.dataguru.cn/thread-51057-1-1.html ORACLE EBS学习的其他资源有哪四个? ORACLE OPEN WORLD大会是不是一个市场营销活动? Or ...

  4. Python学习-19.Python的Http模块

    模拟 http 请求是比较常见的一种需求,在 Python 中,使用 http 模块操作. import http.client # 创建 Http 连接. http = http.client.HT ...

  5. Unity3D中随机函数的应用

    电子游戏中玩家与系统进行互动的乐趣绝大多数取决于事件发生的不可预知性和随机性.在unity3D的API中提供了Random类来解决随机问题. 最简单的应用就是在数组中随机选择一个元素,使用Random ...

  6. 曲演杂坛--使用ALTER TABLE修改字段类型的吐血教训

    --===================================================================== 事件起因:开发发现有表插入数据失败,查看后发现INT类型 ...

  7. MySql数据库远程连接失败问题解决

    例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话. GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY ...

  8. WebAPI+Html跨域时对session的支持

    1.Global.asax中添加对Session的支持,重新Init方法: public override void Init() { this.PostAuthenticateRequest += ...

  9. C#委托和事件的使用的意义

    转载自:https://www.cnblogs.com/yinqixin/p/5056307.html 每一个初学C#的程序猿,在刚刚碰到委托和事件的概念时,估计都是望而却步,茫然摸不到头脑的.百度一 ...

  10. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...