Redis初探(windows/linux安装)
最近在学习Redis,先看看简介:
Redis 是完全开源免费的,遵守BSD协议(可以自由的使用,修改源代码的协议,当然需要满足一定的条件),是一个高性能的key-value数据库。
特点&&优点:
支持数据的持久化,可以将内存中的数据保存在磁盘内,重启的时候可以再次加载进行使用。
不仅支持key-value类型的数据,同时提供list,set,zset,hash等数据结构的存储。
支持数据的备份,即master-slave模式的数据备份。
支持丰富的特性,如publish/subscribe,通知,key过期等。
性能及高,读110000次/s,写81000次/s。
Redis的所有操作都是原子性的,要么成功执行,要么失败完全不执行(回滚)。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
与其他key-value存储的不同点:
数据结构更为复杂(并提供对他们的原子性操作),其数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。
Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。
相比在磁盘上相同的复杂的数据结构,在内存中操作十分简单,可以做很多内部复杂性很强的事情。
Redis的安装
Windows下安装:
下载地址:https://github.com/MSOpenTech/redis/releases
支持32位和64位,下载压缩包到本地,解压,重命名为Redis;
打开命令行,切换到Redis目录,运行 redis-server.exe redis.windows.conf;
此时再次打开命令行(第一个命令行不要关,关闭后无法访问服务端),切换到Redis目录下并运行redis-cli.exe -h 127.0.0.1 -p 6379 ;
设置键值对 set myKey xxx,取出键值对 get myKey。
Linux下安装:
在终端下载Redis:
$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz
使用档案名字解压缩:
$ tar xzf redis-2.8.17.tar.gz
转到Redis路径:
$ cd redis-2.8.17
make:
$ make
启动redis服务:
$ cd src
$ ./redis-server
补充:什么是原子性,什么是原子性操作
例:
A想要从自己的帐户中转1000块钱到B的帐户里。那个从A开始转帐,到转帐结束的这一个过程,称之为一个事务。在这个事务里,要做如下操作:
从A的帐户中减去1000块钱。如果A的帐户原来有3000块钱,现在就变成2000块钱了。
在B的帐户里加1000块钱。如果B的帐户如果原来有2000块钱,现在则变成3000块钱了。
如果在A的帐户已经减去了1000块钱的时候,忽然发生了意外,比如停电什么的,导致转帐事务意外终止了,而此时B的帐户里还没有增加1000块钱。那么,我们称这个操作失败了,要进行回滚。回滚就是回到事务开始之前的状态,也就是回到A的帐户还没减1000块的状态,B的帐户的原来的状态。此时A的帐户仍然有3000块,B的帐户仍然有2000块。
如果把一个事物看做一个程序,它要么完整的被执行,要么完全不执行,这种特性就叫做原子性。
我们把这种要么一起成功(A账户成功减少1000,B账户成功增加1000),要么一起失败(A账户回到原来的状态,B账户也回到原来的状态)的操作叫原子性操作。
Redis初探(windows/linux安装)的更多相关文章
- Redis在windows下安装过程(转)
(转)原文:http://www.cnblogs.com/M-LittleBird/p/5902850.html 要使redis在PHP下运行, 需在PHP文件下的ext扩展文件夹中添加扩展文件 ph ...
- redis在windows下安装设置密码及主从数据库
redis在windows下安装设置密码及主从数据库 1.安装 下载解压后,如图所示: 2.配置. 打开redis.windows.conf文件,在此处设置端口和ip: 这里设置持久化: 在这里设置密 ...
- 下载文件时-修改文件名字 Redis在Windows中安装方法 SVN安装和使用(简单版) WinForm-SQL查询避免UI卡死 Asp.Net MVC Https设置
下载文件时-修改文件名字 1后台代码 /// <summary> /// 文件下载2 /// </summary> /// <param name="Fil ...
- Windows & Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳
Windows & Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 25 转载请注明出处! 目录 Windows & Lin ...
- windows,linux安装redis
windows安装redis Redis介绍 Redis是什么 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string.list ...
- Redis在windows下安装过程
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...
- 【转载】Redis在windows下安装过程
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...
- Redis在Windows下安装全过程
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...
- [转] Redis在windows下安装过程
转载自(http://www.cnblogs.com/M-LittleBird/p/5902850.html) 一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的win ...
随机推荐
- 【洛谷】【二分答案+贪心】P1316 丢瓶盖
[题目描述:] 陶陶是个贪玩的孩子,他在地上丢了A个瓶盖,为了简化问题,我们可以当作这A个瓶盖丢在一条直线上,现在他想从这些瓶盖里找出B个,使得距离最近的2个距离最大,他想知道,最大可以到多少呢? [ ...
- 【转】Android SDK,ADT,API 版本的对应关系
写对应关系之前,先了解一下几个名字的含义. 一. Android ADT: 按照官方网站的开发介绍:Android Development Tools (ADT) is a plugin for th ...
- 20155314 2016-2017-2 《Java程序设计》第2周学习总结
20155314 2016-2017-2 <Java程序设计>第2周学习总结 教材学习内容总结 学习目标 了解Java编程风格 认识Java的类型与变量 掌握Java流程控制的方法(分支. ...
- sort与sorted
Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列. 1.list.sort()方法仅被定义在list中,相反地so ...
- 【转】numpy.random.randn()与rand()的区别
转自: https://blog.csdn.net/u010758410/article/details/71799142 numpy中有一些常用的用来产生随机数的函数,randn()和rand()就 ...
- hive中文字符乱码 解决方法【转】
一.个人初始开发环境的基本情况以及Hive元数据库说明 ①hive的元数据库改成了mysql(安装完mysql之后也没有进行其它别的设置) ②hive-site.xml中设置元数据库对应的配置为 j ...
- python+requests实现接口测试 - cookies的使用
在很多时候,发送请求后,服务端会对发送请求方进行身份识别,如果请求中缺少识别信息或存在错误的识别信息, 会造成识别失败. 如一些需要用户登录以后才能访问的页面. import requests mya ...
- Unity3D游戏开发从零单排(三) - 极速创建狂拽酷炫的游戏地形
提要 在Unity工作流程内,地形是一个必不可少的重要元素.不论是游戏或虚拟现实都会使用到各种类型的地形效果,在这个教学中我们须要了解到地形的制作基本概念与,当中对于Unity的地形操作部分须要大量的 ...
- Verilog中使用'include实现参数化设计
前段时间在FPGA上用Verilog写了一个多端口以太网的数据分发模块,因为每个网口需要独立的MAC地址和IP地址,为了便于后期修改,在设计中使用parameter来定义这些地址和数据总线的位宽等常量 ...
- BZOJ1190_梦幻岛宝珠_KEY
题目传送门 观察数据a*2^b,转化成二进制后,后面跟了b位的0,可以转化为一个分层背包. 先预处理出每个物品是哪一层的,并放在同层内DP. 同层内直接背包,考虑层与层之间的DP. 第一维枚举层数,然 ...