最近在学习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安装)的更多相关文章

  1. Redis在windows下安装过程(转)

    (转)原文:http://www.cnblogs.com/M-LittleBird/p/5902850.html 要使redis在PHP下运行, 需在PHP文件下的ext扩展文件夹中添加扩展文件 ph ...

  2. redis在windows下安装设置密码及主从数据库

    redis在windows下安装设置密码及主从数据库 1.安装 下载解压后,如图所示: 2.配置. 打开redis.windows.conf文件,在此处设置端口和ip: 这里设置持久化: 在这里设置密 ...

  3. 下载文件时-修改文件名字 Redis在Windows中安装方法 SVN安装和使用(简单版) WinForm-SQL查询避免UI卡死 Asp.Net MVC Https设置

    下载文件时-修改文件名字   1后台代码 /// <summary> /// 文件下载2 /// </summary> /// <param name="Fil ...

  4. Windows & Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳

    Windows & Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 25 转载请注明出处! 目录 Windows & Lin ...

  5. windows,linux安装redis

    windows安装redis   Redis介绍 Redis是什么 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string.list ...

  6. Redis在windows下安装过程

    一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...

  7. 【转载】Redis在windows下安装过程

    一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...

  8. Redis在Windows下安装全过程

    一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...

  9. [转] Redis在windows下安装过程

    转载自(http://www.cnblogs.com/M-LittleBird/p/5902850.html) 一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的win ...

随机推荐

  1. python第十四课--排序及自定义函数之自定义函数(案例四)

    整理:4中最常见的自定义函数模型1).无参无返回值2).无参有返回值3).有参无返回值4).有参有返回值 #定义无参无返回值自定义函数 def func1(): print('hello method ...

  2. 微软YY公开课[《微软中国云计算Azure平台体验与新企业架构设计》 周六晚9点

    YY频道是 52545291//@_勤_: YY账号真的是一次一账号啊! 全然记不得之前注冊的//@老徐FrankXuLei: 最火爆的微软免费公开课.第一次顶峰126人.第二次96人.第三次我们又来 ...

  3. Spring实战 MethodInvokingJobDetailFactoryBean使用与分析

    定义一个Job类 public class OffsetsQuartz { public void jobQuartz() { String[] clusterAliass = SystemConfi ...

  4. MySql+Memcached架构的问题

    Memcached采用客户端-服务器的架构,客户端和服务器端的通讯使用自定义的协议标准,只要满足协议格式要求,客户端Library可以用任何语言实现. Memcached服务器使用基于Slab的内存管 ...

  5. Sequelize-nodejs-8-Transactions

    Transactions事务 Sequelize supports two ways of using transactions: Sequelize支持两种使用transactions的方法 One ...

  6. node-webkit,nwjs 系统托盘【Tray】实践

    参照自:https://www.cnblogs.com/xuanhun/p/3678943.html Tray包含title.tooltip.icon.menu.alticon五个属性. title属 ...

  7. 在不升级 mysql 的情况下直接使用 mysql utf8 存储 超过三个字节的 emoji 表情

    由于现在数据库的版本是5.5.2,但是看网上说要直接存储emoji表情,需要升级到5.5.3然后把字符集设置为utf8mb4,但是升级数据库感觉属于敏感操作. 考虑了多久之后直接考虑使用正则来替换,但 ...

  8. 【PHP函数】json_decode() ---- 对 JSON 格式的字符串进行解码

    json_decode() --- 对 JSON 格式的字符串进行解码 1.用法: mixed json_decode ( string $json [, bool $assoc = false [, ...

  9. Verilog基础知识0(`define、parameter、localparam三者的区别及举例)

    1.概述 `define:作用 -> 常用于定义常量可以跨模块.跨文件; 范围 -> 整个工程; parameter:     作用 -> 常用于模块间参数传递; 范围 ->  ...

  10. mac 设置mysql开机自启动

    1.编辑一个mysql启动文件. 在终端里面输入: sudo vi /Library/LaunchDaemons/com.mysql.mysql.plist 2.输入启动文件内容: <?xml ...