Redis和memcache区别:

1 . mm是通过客户端驱动实现集群化,Redis是通过服务器配置文件集群

2. redis是可以进行持久化的存储

3. redis提供高级的数据结构,队列,栈都提供

4. reids是单线程的。处理数据比较小的时候,没有太大区别,数据大的时候,mm性能更高,mm是多线程的。

**************************************************************************************

Redis部署:

1.解压Redis的压缩包

Redis的文件。

2.命令提示行

C:\Users\Administrator>F:  //进入F盘

F:\>cd f:\redis-2.0.2 //cd是进入的命令, 进入redis-2.0.2文件夹

f:\redis-2.0.2>dir //显示目录

f:\redis-2.0.2>redis-server.exe//启动

3.配置Redis,让Redis称为服务。

redis-2.0.2\config\Redis.conf

daemonize yes  //是否作为后台服务,默认为yes

port 6379  //Redis的端口

Logfile Config/Redis.log  //日志路径,相对于redis-server.exe的路径

rdbcompression yes //数据存储到本地数据库时,是否压缩数据,默认yes

dbfilename dump.rdb //数据文件

4.启动服务(重要)

f:/redis-2.0.2>redis-server.exe config/redis.conf //启动服务,并指定一个配置文件,读取配置文件后,就能作为后台服务了,窗口关了也不会停止。

5.redis集群

第一步:要将redis的压缩包放到不同的机器上解压,本机测试就可以copy几个文件夹

第二步:在其他机器上,配置redis.conf

  slaveof : 127.0.0.1 :6379 //是那台机器的从数据库,此处127.0.0.1:6379是主服务器

  port: 6381 //本机的端口

第三步:1.启动主服务;2.逐个启动从服务

第四步:插入数据测试

***主库用来写,从库用来读,分担了压力

redis-cli.exe,就是客户端的意思。

*************************************************************************************

C#操作Redis:

1.添加引用:ServiceStack.dll,ServiceStack.Interfaces.dll,ServiceStack.ServiceInterface.dll

var client = new RedisClient("127.0.0.1",6379); //写的时候使用主库,主服务器和从服务是数据同步

var readClient =  new RedisClient("127.0.0.1",6381);//读的时候使用从库,如果有多个从库,那么可以随机的弄一个

var s = client.AddItemToSortedSet("12","百度",400);// 这里添加一个排序列表, 12是key的意思,"百度"是value,400是序号,用来排序

client.AddItemToSortedSet("12","谷歌",300);

client.AddItemToSortedSet("12","阿里",300);

client.AddItemToSortedSet("12","新浪",100);

client.AddItemToSortedSet("12","人人",500);

//

var list = client.GetRangeFormSortedSet("12",0,4);//12是key,0开始,4结束,以升序获取范围列表

list =  client.GetRangeFormSortedSetDesc("12",0,4);//以降序获取范围列表

//redis基本功能,分布式缓存

Client.Add("key","value",DateTime.Now.AddMinutes(20));

//数据结构:队列

client.EnqueueItemOnList("LogQueue","错误信息1",) ;//进队列

client.EnqueueItemOnList("LogQueue","错误信息2",) ;//进队列

string str = client.DequeueItemFormList("LogQueue")'//获取的是"错误信息1",队列先进先出

//数据结构:栈

client.PushItemToList("fz","1");

client.PushItemToList("fz","2");

string fz = client.PopItemFromList("fz");//获取的是"2",栈是先进后出

//

队列和栈的用处重点:

主服务器接收到某些请求后,将数据存到队列当中,然后其他服务器定时获取数据,并且处理数据,已达到分机器处理。

//

学习笔记49_Redis的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

随机推荐

  1. 3. Git与TortoiseGit基本操作

    1. GitHub操作 本节先简单介绍 git 的使用与操作, 然后再介绍 TortoiseGit 的使用与操作. 先看看SVN的操作吧, 最常见的是 检出(Check out ...), 更新 (U ...

  2. [LeetCode] 704. Binary Search

    Description Given a sorted (in ascending order) integer array nums of n elements and a target value, ...

  3. BeetleX服务网关之限流和缓存

    限流和缓存相关是网关中两个非常重要的功能,前者是保障服务更可靠地运行,后者则可以大大提高应用的吞吐能力.Beetlex.Bumblebee微服务网关提供了两个扩展插件来实现这两个功能,分别是Beetl ...

  4. 我又不是你的谁--java instanceof操作符用法揭秘

    背景故事 <曾经最美>是朱铭捷演唱的一首歌曲,由陈佳明填词,叶良俊谱曲,是电视剧<水晶之恋>的主题曲.歌曲时长4分28秒. 歌曲歌词: 看不穿你的眼睛 藏有多少悲和喜 像冰雪细 ...

  5. 移动端的<meta>标签

    <head> <meta charset="UTF-8" /> <!-- 页面关键词 --> <meta name="keywo ...

  6. java之ReentrantLock详解

    前言 如果一个代码块被synchronized修饰了,当一个线程获取了相应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的释放,现在有这么一种情况,这个获取锁的线程由于要等待IO或者其他原 ...

  7. 各种常见文件的hex文件头

    我们在做ctf时,经常需要辨认各种文件头,跟大家分享一下一些常见的文件头.   扩展名 文件头标识(HEX) 文件描述 123 00 00 1A 00 05 10 04 Lotus 1-2-3 spr ...

  8. Spring5源码解析6-ConfigurationClassParser 解析配置类

    ConfigurationClassParser 在ConfigurationClassPostProcessor#processConfigBeanDefinitions方法中创建了Configur ...

  9. Jenkins构建Jmeter项目

    1.启动jenkins 2.新建自由风格的项目 定时任务 构建操作 安装HTML Publisher插件 构建后操作 最后保存构建,查看报告

  10. socat的介绍与使用

    Socat 是 Linux 下的一个多功能的网络工具,名字来由是 「Socket CAT」.其功能与有瑞士军刀之称的 Netcat 类似,可以看做是 Netcat 的加强版. Socat 的主要特点就 ...