Redis学习——简介
一、Redis简介
Redis是一种基于键值对(key-value)的NoSQL数据库,与很多键值对数据库不同的是,Redis中的值可以是由string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、HyperLogLog、GEO(地理信息定位)等多种数据结构和算法组成,因此Redis可以满足很多的应用场景,而且因为Redis会将所有数据都存放在内存中,所以它的读写性能非常惊人。不仅如此,Redis还可以将内存的数据利用快照和日志的形式保存到硬盘上,这样在发生类似断电或者机器故障的时候,内存中的数据不会“丢失”。除了上述功能以外,Redis还提供了键过期、发布订阅、事务、流水线、Lua脚本等附加功能。总之,如果在合适的场景使用好Redis,它就会像一把瑞士军刀一样所向披靡
二、redis特性:
1)、速度快
原因:1、数据存于内存中,2底层用C语言开发,效率较高,3、redis使用了单线程架构,没有多线程造成的竞争问题。
2)、基于键值对的数据结构服务器
redis中的值不仅是可以是字符串,还可以是具体的数据结构。主要提供了5中数据结构:
字符串、哈希、列表、集合、有序集合
3)、丰富的功能
.键过期功能,用于实现缓存
.发布订阅功能,用于实现消息系统
.支持lua脚本功能,可以利用lua创造出新的redis命令
.提供了简单的事物功能,能在一定程度上保证事物特性
.提供了流水线(Pipeline)功能,这样客户端能将一批命令一次性传到redis,减少了网络的开销。
4)、简单稳定
5)、客户端语言多
6)、持久化:RDB和AOF
7)、主从复制,实现了多个相同数据的redis副本。复制功能是分布式redis的基础。
8)、高可用和分布式
三、redis使用场景
1)、缓存(几乎所有的大型网站都用redis做缓存)
2)、排行榜系统
3)、计数器应用
4)、社交网络
5)、消息队列系统
四、redis的安装
1)下载Redis指定版本的源码压缩包到当前目录。
2)解压缩Redis源码压缩包。
3)建立一个redis目录的软连接,指向redis-3.0.7。(这样做是为了不把redis目录固定在指定版本上,有利于Redis未来版本升级,算是安装软件的一种好习惯。)
4)进入redis目录。
5)编译(编译之前确保操作系统已经安装gcc)。
6)安装。(安装是将Redis的相关运行文件放到/usr/local/bin/下,这样就可以在任意目录下执行Redis的命令)
$ wget http://download.redis.io/releases/redis-3.0.7.tar.gz
$ tar xzf redis-3.0.7.tar.gz
$ ln -s redis-3.0.7 redis
$ cd redis
$ make
$ make install
Redis安装之后,src和/usr/local/bin目录下多了几个以redis开头可执行文件,我们称之为Redis Shell:
redis-benchmark 性能测试工具
redis-check-aof aof日志文件检测工具(比如断电造成日志损坏,可以检测并修复)
redis-check-dump rdb快照文件检测工具,效果同上
redis-cli 客户端
redis-server 服务端
五、配置、启动、操作、关闭Redis
1、配置启动Redis
1)默认配置启动Redis
./redis-server
这种启动是前台直接运行,也就是说,执行完该命令后,如果Lunix关闭当前会话,则Redis服务也随即关闭
2)运行启动
redis-server加上要修改配置名和值(可以是多对),没有设置的配置将使用默认配置
# redis-server --port 6380
这种启动是前台直接运行
3)配置文件启动
将配置写到指定文件里,通过配置文件启动
./redis-server /home/etluser/redis/redis.conf
这种启动后台启动
2、Redis命令行客户端
1)交互式方式
通过redis-cli-h{host}-p{port}的方式连接到Redis服务,之后所有的操作都是通过交互的方式实现,不需要再执行redis-cli了
./redis-cli -h 127.0.0.1 -p 6379
2)命令方式
用redis-cli-h ip{host}-p{port}{command}就可以直接得到命令的返回结果
redis-cli -h 127.0.0.1 -p 6379 get hello
如果没有-h参数,那么默认连接127.0.0.1;如果没有-p,那么默认6379端口
3、停止Redis服务
Redis提供了shutdown命令来停止Redis服务
$ redis-cli shutdown
shutdown还有一个参数,代表是否在关闭Redis前,生成持久化文件:redis-cli shutdown nosave|save
参考资料:《Redis开发与运维》
Redis学习——简介的更多相关文章
- redis学习-简介
1. Redis 简介 1.1 Redis是什么 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统.Red ...
- Redis学习笔记(1)——Redis简介
一.Redis是什么? Remote Dictionary Server(Redis) 是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value ...
- Redis数据类型简介(十分钟快速学习Redis)
如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...
- Redis学习手册(目录)
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
- 分布式缓存技术redis学习系列(五)——redis实战(redis与spring整合,分布式锁实现)
本文是redis学习系列的第五篇,点击下面链接可回看系列文章 <redis简介以及linux上的安装> <详细讲解redis数据结构(内存模型)以及常用命令> <redi ...
- 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
- Redis学习手册——转载
转载出处:http://www.cnblogs.com/stephen-liu74/archive/2012/04/16/2370212.html 为什么自己当初要选择Redis作为数据存储解决方案中 ...
- 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
- Redis学习手册
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
随机推荐
- 基于SSL(TLS)的HTTPS网页下载——如何编写健壮的可靠的网页下载
源码下载地址案例开发环境:VS2010本案例未使用openssl库,内部提供了sslite.dll库进行TLS会话,该库提供了ISSLSession接口用于建立SSL会话. HTTP协议很简单,写个简 ...
- 工作流引擎Activiti使用进阶!详细解析工作流框架中高级功能的使用示例
Activiti高级功能简介 Activit的高级用例,会超越BPMN 2.0流程的范畴,使用Activiti高级功能需要有Activiti开发的明确目标和足够的Activiti开发经验 监听流程解析 ...
- 【NX二次开发】多功能对话框UF_UI_message_dialog
多功能对话框 1 extern DllExport void ufsta(char *param, int *returnCode, int rlen) 2 { 3 UF_initialize(); ...
- csp-s模拟测试57(10.2)「天空龙」·「巨神兵」·「太阳神」
题目是古埃及神话??? A. 天空龙 傻逼模拟,看来没有滑天下之大稽QAQ,也没有打错快读(大雾...) B. 巨神兵 难度爆增,一脸懵比..... 60分状压: 因为是求有向图,关于有向图好像拓扑用 ...
- 「模拟8.23」one递推,约瑟夫
前置芝士约瑟夫问题 这样大概就是板子问题了 考场的树状数组+二分的60分暴力??? 1 #include<bits/stdc++.h> 2 #define int long long 3 ...
- winform/WPF 多语言的实现
WPF实现起来非常现代化,可以参考 https://www.cnblogs.com/yang-fei/p/4854460.html winform主要说一下实现过程和注意点,实现参考AutoUpdat ...
- DOS命令行(5)——Windows系统的配置与管理(下)
whoami --查看当前有效用户 这个工具可以用来获取本地系统上当前用户(访问令牌)的用户名和组信息,以及相应的安全标识符(SID).声明.本地系统上当前用户的权限.登录标识符(登录 ID).例如, ...
- SSM动态展示分页
这个作业属于哪个课程 2021春软件工程实践|S班(福州大学) 这个作业要求在哪里 作业具体要求 这个作业的目标 个人技术 参考文献 ... 目录 技术概述 技术详述 问题和解决过程 总结 参考文献 ...
- C#调用JAVA(二)调用方法
上期我们创建了jar包并放到了unity中,那么我们继续 如果您还没有看上一期请先看上一期,这是链接 C#调用JAVA(一)制作jar包 - 执著GodShadow - 博客园 (cnblogs.co ...
- Redis客户端管理
1.客户端管理 Redis提供了客户端相关API对其状态进行监控和管理,本节将深入介绍各个API的使用方法以及在开发运维中可能遇到的问题. 1.1 客户端API 1.client list clien ...