Redis -- 01 入门
1. Redis是什么 |
|---|
与memcached 和 couchbase类似,redis是非常快速的基于内存的键值数据库,使用标准c编写,是使用最广泛的缓存中间件。利用Redis提供的五种基本数据类型(String, List, Set, Zset, Hash)可以做一些很灵活很强大的应用程序组件。
2. 安装 |
|---|
CentOS
通过redis的官方网站 http://redis.io/download 可以下载到最新的redis源代码
先安装gcc, 再make编译,然后make install 安装,然后通过redis-server启动redis实例
yum -y install gcc
wget http://10.58.8.232:10000/redis-3.0.7.tar.gz
tar -xzvf redis-3.0..tar.gz
make MALLOC=libc
make install
redis-server redis.conf
启动之后会是这个界面

配置一下 redis.conf,将daemonize 设置为yes
然后再次启动
redis-server redis.conf
此时redis可后台运行
通过redis-cli可以运行测试
SET hello world
GET hello

Windows
Redis官方不支持windows版本,有个开源项目是干这个的 https://github.com/MSOpenTech/redis
安装文件下载地址 https://github.com/MSOpenTech/redis/releases/download/win-2.8.2400/Redis-x64-2.8.2400.msi
双击安装

默认安装路径是 C:\Program Files\Redis
cd到这个目录
设置 redis.windows.conf 的maxheap(建议设置为100M以上)
然后执行 redis-server.exe redis.windows.conf

3. 基本概念和命令 |
|---|
单线程
redis使用了单线程,一个实例只使用一个cpu,这样避免了不必要的上下文切换和竞争资源。因为redis不是计算密集型的(数据密集型),所以对cpu要求不高。如果单核性能不够用,可以多开几个进程。
db
db 就相当于MySQL数据库,不同的应用程序数据存储在不同的数据库下,不同的应用程序数据存储在不同的数据库下。同一个db内不允许出现重复的key,因为Redis中的DB是相互独立存在的,所以在不同的db中可以出现重复的key。
默认有db0 ~ db15 16个db, 数量可以在redis.conf中更改
可以通过下面的命令来切换到不同的数据库下

随后,所有的命令将使用数据库3,知道你明确的切换到另一个数据库下
每个数据库都有属于自己的空间,不必担心之间的key冲突。
flushdb 命令清除数据,只会清除当前的数据库下的数据,不会影响到其他数据库。
用 keys * 可以查找当前db(默认是0)下的所有key
常用命令:
SET name "centanet" – 设置name的值为centanet
GET name --获取name的值
INFO 命令可以查看redis服务器当前的状态

4. 数据类型 |
|---|
redis目前提供四种数据类型:string,list,set及zset和Hash。
String就是最简单的键值对
List是一个链表结构 ,主要功能是push、pop
Set是无序集合 和数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。
ZSet是有序集合,在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解了有两列的sqlserver表,一列存value,一列存顺序
Hash 数据类型允许用户用Redis存储对象类型, key => [{name: value} ...]
RPUSH friends "Justin"
SISMEMBER nosql "mongo"
SADD rdb "postgresql"
SADD rdb "sql server"
ZSET
ZADD movies 0.3 "Twilight" --向有序集合中插入Twilight ,分数为0.3
ZADD movies 0.9 "Zootopia"
ZADD movies 0.0001 "TinyTime"
ZADD movies 0.8 "Frozen"
ZADD movies 0.91 "TheGiver"
ZADD movies 0.98 "Boyhood"
ZADD movies 0.7 "Nowyouseeme"
ZRANGE movies 2 4 WITHSCORES --从有序集合中取 2 到 4的元素,并返回分数
HSET session:123 visits 10
ZADD movies 0.9 "Zootopia"
ZADD movies 0.0001 "TinyTime" -- 不能有空格
ZADD movies 0.8 "Frozen"
ZADD movies 0.91 "TheGiver"
ZADD movies 0.98 "Boyhood"
ZADD movies 0.7 "Nowyouseeme"
ZADD movies 0.88 "Madagascar"
5. C#测试 |
|---|
C#客户端,我们选用 StackExchange.Redis
项目地址 https://github.com/StackExchange/StackExchange.Redis
或者通过nuget 获取
Install-Package StackExchange.Redis
测试代码
|
1
2
3
4
5
6
7
8
9
10
11
12
|
class Program{ static void Main(string[] args) { ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("10.4.18.125:6379"); //获取redis连接 IDatabase db = redis.GetDatabase(); // select db 默认是0 db.StringSet("hello", "world"); var value = db.StringGet("hello"); Console.WriteLine(value); Console.ReadKey(); }} |

1. Redis是什么 |
|---|
1. Redis是什么
与memcached 和 couchbase类似,redis是非常快速的基于内存的键值数据库,使用标准c编写,是使用最广泛的缓存中间件。利用Redis提供的五种基本数据类型(String, List, Set, Zset, Hash)可以做一些很灵活很强大的应用程序组件。
2. 安装 |
|---|
CentOS
通过redis的官方网站 http://redis.io/download 可以下载到最新的redis源代码,也可以通过232上的静态资源下载3.0.7版本 http://10.58.8.232:10000/redis-3.0.7.tar.gz
先安装gcc, 再make编译,然后make install 安装,然后通过redis-server启动redis实例
yum -y install gccwget http://10.58.8.232:10000/redis-3.0.7.tar.gztar -xzvf redis-3.0.7.tar.gzmake MALLOC=libcmake installredis-server redis.conf |
启动之后会是这个界面

配置一下 redis.conf,将daemonize 设置为yes
然后再次启动
redis-server redis.conf
此时redis可后台运行
通过redis-cli可以运行测试
SET hello world
GET hello

Windows
Redis官方不支持windows版本,有个开源项目是干这个的 https://github.com/MSOpenTech/redis
安装文件下载地址 https://github.com/MSOpenTech/redis/releases/download/win-2.8.2400/Redis-x64-2.8.2400.msi
双击安装

默认安装路径是 C:\Program Files\Redis
cd到这个目录
设置 redis.windows.conf 的maxheap(建议设置为100M以上)
然后执行 redis-server.exe redis.windows.conf

3. 基本概念和命令 |
|---|
单线程
redis使用了单线程,一个实例只使用一个cpu,这样避免了不必要的上下文切换和竞争资源。因为redis不是计算密集型的(数据密集型),所以对cpu要求不高。如果单核性能不够用,可以多开几个进程。
db
db 就相当于MySQL数据库,不同的应用程序数据存储在不同的数据库下,不同的应用程序数据存储在不同的数据库下。同一个db内不允许出现重复的key,因为Redis中的DB是相互独立存在的,所以在不同的db中可以出现重复的key。
默认有db0 ~ db15 16个db, 数量可以在redis.conf中更改
可以通过下面的命令来切换到不同的数据库下

随后,所有的命令将使用数据库3,知道你明确的切换到另一个数据库下
每个数据库都有属于自己的空间,不必担心之间的key冲突。
flushdb 命令清除数据,只会清除当前的数据库下的数据,不会影响到其他数据库。
用 keys * 可以查找当前db(默认是0)下的所有key
常用命令:
SET name "centanet" – 设置name的值为centanet
GET name --获取name的值
INFO 命令可以查看redis服务器当前的状态

4. 数据类型 |
|---|
redis目前提供四种数据类型:string,list,set及zset和Hash。
String就是最简单的键值对
List是一个链表结构 ,主要功能是push、pop
Set是无序集合 和数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。
ZSet是有序集合,在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解了有两列的sqlserver表,一列存value,一列存顺序
Hash 数据类型允许用户用Redis存储对象类型, key => [{name: value} ...]
RPUSH friends "Justin"
SISMEMBER nosql "mongo"
SADD rdb "postgresql"
SADD rdb "sql server"
ZSET
ZADD movies 0.3 "Twilight" --向有序集合中插入Twilight ,分数为0.3
ZADD movies 0.9 "Zootopia"
ZADD movies 0.0001 "TinyTime"
ZADD movies 0.8 "Frozen"
ZADD movies 0.91 "TheGiver"
ZADD movies 0.98 "Boyhood"
ZADD movies 0.7 "Nowyouseeme"
ZRANGE movies 2 4 WITHSCORES --从有序集合中取 2 到 4的元素,并返回分数
HSET session:123 visits 10
ZADD movies 0.9 "Zootopia"
ZADD movies 0.0001 "TinyTime" -- 不能有空格
ZADD movies 0.8 "Frozen"
ZADD movies 0.91 "TheGiver"
ZADD movies 0.98 "Boyhood"
ZADD movies 0.7 "Nowyouseeme"
ZADD movies 0.88 "Madagascar"
5. C#测试 |
|---|
C#客户端,我们选用 StackExchange.Redis
项目地址 https://github.com/StackExchange/StackExchange.Redis
或者通过nuget 获取
Install-Package StackExchange.Redis
测试代码
|
1
2
3
4
5
6
7
8
9
10
11
12
|
class Program{ static void Main(string[] args) { ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("10.4.18.125:6379"); //获取redis连接 IDatabase db = redis.GetDatabase(); // select db 默认是0 db.StringSet("hello", "world"); var value = db.StringGet("hello"); Console.WriteLine(value); Console.ReadKey(); }} |

Redis -- 01 入门的更多相关文章
- Redis 快速入门
Redis 快速入门 谈到Redis,大家应该都不陌生.它是用c语言开发的一个高性能键值数据库,主要用于缓存领域.本章通过Redis的安装,Redis的五大数据类型,Redis的Java客户端,Red ...
- Python学习--01入门
Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...
- 超强、超详细Redis数据库入门教程
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...
- Redis快速入门:安装、配置和操作
本文是有关Redis的系列技术文章之一.在之前的文章中介绍了<Redis快速入门:初识Redis>,对Redis有了一个初步的了解.今天继续为大家介绍Redis如何安装.配置和操作. 系列 ...
- Java中Redis简单入门
Redis是一个开源的,先进的 key-value 存储可用于构建高性能,可扩展的 Web 应用程序的解决方案. Redis官方网网站是:http://www.redis.io/,如下: Redis ...
- 超强、超详细Redis数据库入门教程(转载)
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...
- Redis从入门到精通:初级篇
原文链接:http://www.cnblogs.com/xrq730/p/8890896.html,转载请注明出处,谢谢 Redis从入门到精通:初级篇 平时陆陆续续看了不少Redis的文章了,工作中 ...
- .NET分布式缓存Redis从入门到实战
一.课程介绍 今天阿笨给大家带来一堂NOSQL的课程,本期的主角是Redis.希望大家学完本次分享课程后对redis有一个基本的了解和认识,并且熟悉和掌握 Redis在.NET中的使用. 本次分享课程 ...
- 超详细Redis数据库入门教程
[本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8.redis ...
随机推荐
- Android Studio运行SlidingView报错 FloatMath函数
1,错误信息时这样的(图片百度的,但是提醒的是一样的) 我们点击这个错误提示,就会跳到出错的地方 2,开始的时候觉得很蛋疼,因为这个SlidingView是从别处导过来的,没什么问题把...就很久就 ...
- Python学习路程day16
Python之路,Day14 - It's time for Django 本节内容 Django流程介绍 Django url Django view Django models Django te ...
- 转载--提高C++性能的编程技术
读书笔记:提高C++性能的编程技术 第1章 跟踪范例 1.1 关注点 本章引入的实际问题为:定义一个简单的Trace类,将当前函数名输出到日志文件中.Trace对象会带来一定的开销,因此在默认情况 ...
- BZOJ 3270 && BZOJ 1778 (期望DP && 高斯消元)
BZOJ 3270 :设置状态为Id(x,y)表示一人在x,一人在y这个状态的概率. 所以总共有n^2种状态. p[i]表示留在该点的概率,Out[i]=(1-p[i])/Degree[i]表示离开该 ...
- linux命令:chmod
1.命令介绍: chmod用来改变系统文件或目录的相关权限,可读,可写,可执行等. 2.命令格式: chmod [选项] 模式 文件 3.命令参数: 必要参数:-c 当发生改变时,报告处理信息-f 错 ...
- Excel顺序生成序号,不能有数字4出现
A1填写:1 A2填写:=--SUBSTITUTE(A1+1,4,5) 然后下拉A3之后的单元格 需求应用场合:生成员工序号忌讳出现4的.
- Data Big Bang
在过去的五十多年中,我们可以较为直观地看到IT行业正以蓬勃发展之势渗入到我们生活的方方面面.虽经历过几轮新兴和重叠的技术浪潮,但每一波浪潮都伴随着新兴技术的革新.IT供应商主导着互联网的走向,网络秩序 ...
- jQuery 遍历 - each() 方法
定义和用法 each() 方法规定为每个匹配元素规定运行的函数. 提示:返回 false 可用于及早停止循环. 语法 $(selector).each(function(index,element)) ...
- 如何书写高质量的jQuery代码
想必大家对于jQuery这个最流行的javascript类库都不陌生,而且只要是前端开发人员肯定或多或少的使用或者接触过,在今天的这篇文章中,参考了一些资料及实际使用效率,将介绍一些书写高质量jQue ...
- 最短路径问题——floyd算法
floyd算法和之前讲的bellman算法.dijkstra算法最大的不同在于它所处理的终于不再是单源问题了,floyd可以解决任何点到点之间的最短路径问题,个人觉得floyd是最简单最好用的一种算法 ...