Redis:在windows环境安装Redis
Redis:在windows环境安装Redis
第一步:
下载windows版本的Redis:https://github.com/MSOpenTech/Redis。
第二步:
在命令行执行:D:\redis-2.6\redis-server.exe。

第三步:
这里有教程:https://github.com/ServiceStack/ServiceStack.Redis。
C#版本的客户端类库

Write、Read和Remove测试
代码下载:http://yunpan.cn/QtNrcGxnPRVdV。

1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading.Tasks;
6 using System.Threading;
7
8 using ServiceStack.Redis;
9 using ServiceStack.Text;
10 using ServiceStack.Redis.Generic;
11
12 namespace RedisStudy
13 {
14 public class User
15 {
16 public string Name { get; set; }
17 }
18
19 class Program
20 {
21 static void Main(string[] args)
22 {
23 Write();
24 Read();
25 Remove();
26 }
27
28 private static void Write()
29 {
30 using (var redisClient = new RedisClient())
31 {
32 IRedisTypedClient<User> redis = redisClient.As<User>();
33
34 var users = redis.Lists["urn:users"];
35
36 users.Add(new User { Name = "段光伟" });
37 users.Add(new User { Name = "段光宇" });
38
39 redis.Save();
40 }
41 }
42
43 private static void Read()
44 {
45 using (var redisClient = new RedisClient())
46 {
47 IRedisTypedClient<User> redis = redisClient.As<User>();
48
49 var users = redis.Lists["urn:users"];
50
51 Console.WriteLine(users.Count);
52
53 redis.Save();
54 }
55 }
56
57 private static void Remove()
58 {
59 using (var redisClient = new RedisClient())
60 {
61 IRedisTypedClient<User> redis = redisClient.As<User>();
62
63 var users = redis.Lists["urn:users"];
64
65 redis.RemoveEntry(users);
66 }
67 }
68 }
69 }

发布订阅测试

1 static void Main(string[] args)
2 {
3 var messagesReceived = 0;
4 var maxMessage = 5;
5 var channelName = "幸福框架";
6
7 using (var redisConsumer = new RedisClient())
8 {
9 using (var subscription = redisConsumer.CreateSubscription())
10 {
11 subscription.OnSubscribe = channel =>
12 {
13 Console.WriteLine(String.Format("订阅频道:'{0}'", channel));
14 };
15 subscription.OnUnSubscribe = channel =>
16 {
17 Console.WriteLine(String.Format("取消订阅频道:'{0}'", channel));
18 };
19 subscription.OnMessage = (channel, msg) =>
20 {
21 Console.WriteLine(String.Format("从频道:'{0}'获取了消息:'{1}'", channel, msg));
22
23 if (++messagesReceived == maxMessage)
24 {
25 subscription.UnSubscribeFromAllChannels();
26 }
27 };
28
29 ThreadPool.QueueUserWorkItem(x =>
30 {
31 Thread.Sleep(200);
32 Console.WriteLine("开始发布消息");
33
34 using (var redisPublisher = new RedisClient())
35 {
36 for (var i = 1; i <= 5; i++)
37 {
38 var message = "段光伟:" + DateTime.Now;
39 Console.WriteLine(String.Format("发布消息:'{0}'到频道:'{1}'", message, channelName));
40 redisPublisher.PublishMessage(channelName, message);
41 }
42 }
43 });
44
45 Console.WriteLine(String.Format("开始监听频道:'{0}'", channelName));
46 subscription.SubscribeToChannels(channelName); //blocking
47 }
48 }
49 }


备注
听说很多人用Redis做缓存和消息队列,就想尝试一下,这次先把安装环境弄好,有个基本了解了,找个时间继续学习:缓存和消息队列。
Redis:在windows环境安装Redis的更多相关文章
- Redis学习——Windows环境下Redis的安装(二)
一.说明 之前介绍了Linux环境下Redis的安装,这次介绍一下Windows环境下Redis的安装,首先要讲的是,Redis官方只支持Linux,还好 Microsoft Open Tech gr ...
- Redis——windows环境安装redis和redis sentinel部署
一:Redis的下载和安装 1:下载Redis Redis的官方网站Download页面,Redis提示说:Redis的正式版不支持Windows,要Windows学习Redis,请点击Learn m ...
- 数据库 Redis:Windows环境安装
1. 下载 Redis (1)前往 GitHub 下载:https://github.com/microsoftarchive/redis (2)点击 release : (3)选择好版本号后,下载文 ...
- Redis在windows环境下ThinkPHP的安装和使用
1.Redis概述: 2.Redis在windows环境下的安装: 下载地址:https://github.com/dmajkic/redis/downloads,选取其中一个zip压缩包:
- Linux & Windows 环境下 Redis 安装与基本配置
索引: 目录索引 参看代码 GitHub: redis.txt 一.Linux (DeepinOS) 环境 .安装Redis服务 sudo apt-get install redis-server . ...
- PHP XAMPP windows环境安装扩展redis 致命错误: Class 'Redis' not found解决方法
PHP XAMPP windows环境安装扩展redis 致命错误: Class 'Redis' not found解决方法 1.电脑需要先安装redis服务端环境,并在安装目录下打开客户端redis ...
- Redis实战(一)Redis简介及环境安装(Windows)
提到Redis,大家肯定都听过,并且应该都在项目中或多或少的使用过,也许你觉得Redis用起来挺简单的呀,但如果有人问你下面的几个问题(比如同事或者面试官),你能回答的上来吗? 什么是Redis? R ...
- <转>windows下安装redis
1.redis简介redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...
- Windows下安装redis,并与PHP使用
一.在windows下安装redis: redis的官方网站下载地址:http://redis.io/download 进入以上网址之后,请见以下的图片操作下载redis: 第一步: 第二步:在对应的 ...
随机推荐
- Codeforces #180 div2 C Parity Game
// Codeforces #180 div2 C Parity Game // // 这个问题的意思被摄物体没有解释 // // 这个主题是如此的狠一点(对我来说,),不多说了这 // // 解决问 ...
- TLD跟踪算法优化(一)并行化
才学疏浅,仅仅言片语,仅仅求志同道的朋友一起交流研究. 并行化不算是算法的改进,仅仅是追求执行的实时性. 简要列举一个样例: TLD算法的C++版本号源代码里: LKTracker::trackf2f ...
- C--指针数组
一个变量有一个地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,他们都有相应的地址,所谓数组的指针是指数组的其实地址,数组元素的指针是数组元素的地址. 一个数组是有连续的一块内存单元组成 ...
- C# foreach 有用方法具体解释
网上查资料,说foreach 不能改动迭代变量,仅仅能訪问迭代变量.自己理解也不是非常深,通过几个代码进行验证,发现foreach的使用方法还有点特别 验证方法: 1. 迭代变量 为int int[] ...
- 加载xib文件的两种方式
一.加载xib文件的两种方式 1.方法一(NewsCell是xib文件的名称) NSArray *objects = [[NSBundle mainBundle] loadNibNamed:@&quo ...
- <<Python基础课程>>学习笔记 | 文章13章 | 数据库支持
备注:本章介绍了比较简单,只是比较使用样品,主要假设是把握连接,利用数据库.和SQLite做演示样本 ------ Python数据库API 为了解决Python中各种数据库模块间的兼容问题,如今已经 ...
- Linux 经常使用 性能 检测 命令 说明
1.uptime [root@smgsim02 ~]# uptime 15:08:15 up 98 days, 4:19, 2 users, load average: 0.07, 0.29, ...
- JS中实现A*算法寻路
<html><head><title>use A* to find path...</title></head><body style ...
- JDK动态代理机制
JDK Proxy OverView jdk的动态代理是基于接口的.必须实现了某一个或多个随意接口才干够被代理.并且仅仅有这些接口中的方法会被代理. 看了一下jdk带的动态代理api,发现没有样例实在 ...
- 顶级jQuery树插件
顶级jQuery树插件 顶级jQuery树插件 2013-03-05 17:20 139人阅读 评论(0) 收藏 举报 jsTree JsTree是一个基于jQuery的Tree控件.支持HTML.J ...