学习笔记49_Redis
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的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
随机推荐
- window连接远程服务器报函数不支持之解决方案
1.针对window10系统 Windows+R,输入cmd,输入gpedit.msc 然后就可以启动远程连接了 2.针对window7用户 没有上述的第一个操作选项 1. 打开注册表,快捷输入 “r ...
- Linux Shell 基础知识(二)
1.本文知识结构 2.文件的查询与检索 2.1. cd 目录切换 找到文件/目录位置:cd 切换到上一个工作目录: cd - 切换到home目录: cd or cd ~ 显示当前路径: pwd 更改当 ...
- 用js做数字字母混合的随机四位验证码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Vue入门教程 第三篇 (条件与循环)
v-if语法(条件) 符合条件时显示(渲染)某一元素. <div id="app"> <div v-if="ok"> <h1> ...
- 我在用的翻译软件 -> 微软翻译+网易有道词典+谷歌翻译
Windows网页翻译 因为微软翻译相对来说翻译网页更为准确,我也喜欢用谷歌的Chrome浏览器,但是我没找到微软翻译的扩展,这里只能放弃 这个需要配合Microsoft Edge浏览器进行使用,也是 ...
- 区间 GCD
区间 GCD题目描述最近 JC 同学刚学会 gcd,于是迷上了与 gcd 有关的问题.今天他又出了一道这样的题目,想要考考你,你能顺利完成吗?给定一个长度为 n 的字符串 s[1..n],串仅包含小写 ...
- layui navTree 动态渲染菜单组件介绍
navTree.js 简介 extends/navTree.js 是一个基于 layui 扩展的模块化组件,用于构建后台布局系统中的垂直导航菜单与水平导航菜单. extends/navTree.js ...
- 并发新构件之CountDownLatch
CountDownLatch译为倒计时锁存器:JDK描述 :允许一个或多个线程等待直到在其他线程中执行的一组操作完成的同步辅助. A CountDownLatch用给定的计数初始化. awai ...
- OSX 10.14.2 安装Cocoapods 出现问题的解决方法
今天尝试用 Cocoapods安装个第三方库.. 输入pod install, 发现 command not find. WTF! 估计是升级10.11后Cocoapods被干掉了. 我输入 sudo ...
- python selenium单/复选框操作
一.单选:radio 1.首先是定位选择框的位置 2.定位id,点击图标就可以了,代码如下(获取url地址方法:把上面源码粘贴到文本保存为.html后缀后用浏览器打开,在浏览器url地址栏复制出地址就 ...