关于 Redis ,下面来自百度百科:

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hashs(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。

上次测试了 Memcached,今天决定试试这个 Redis

由于 Redis 部署在 Linux 环境下性能优于 Windows,于是就打算在虚拟机 ubuntu 环境下部署,然后在 Windows 8 下测试。

1. 去官网下载 Redis 解压和安装,我下载的 2.8.0-rc2。

$ wget http://redis.googlecode.com/files/redis-2.6.15.tar.gz
$ tar xzf redis-2.6.15.tar.gz
$ cd redis-2.6.15
$ make

2. 编译后的可执行文件在src目录中,可以使用下面的命令运行Redis:

$ src/redis-server

3. 你可以使用内置的客户端连接Redis:

$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

4. 在 Windows 下新建 .NET 程序测试。

如果连不上

成功的情况下

测试代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ServiceStack.Redis;
using System.Threading; namespace RedisTutorial
{
class Program
{
static void Main(string[] args)
{
using (var redisClient = RedisManager.GetClient())
{
using (var cars = redisClient.GetTypedClient<Car>())
{
if (cars.GetAll().Count > )
cars.DeleteAll();
var dansFord = new Car { Id = cars.GetNextSequence(), Title = "张三的汽车", Make = new Make { Name = "宝马" }, Model = new Model { Name = "奔驰" }};
var beccisFord = new Car{Id = cars.GetNextSequence(),Title = "李四的汽车",Make = new Make { Name = "本田" },Model = new Model { Name = "福特" }};
var vauxhallAstra = new Car{Id = cars.GetNextSequence(),Title = "王五的汽车",Make = new Make { Name = "比亚迪" },Model = new Model { Name = "通用" }};
var vauxhallNova = new Car{Id = cars.GetNextSequence(),Title = "赵六的汽车",Make = new Make { Name = "大众" },Model = new Model { Name = "奥迪" }}; var carsToStore = new List<Car> { dansFord, beccisFord, vauxhallAstra, vauxhallNova };
cars.StoreAll(carsToStore); Console.WriteLine("Redis 有-> " + cars.GetAll().Count + " 辆汽车。");
cars.ExpireAt(vauxhallAstra.Id, DateTime.Now.AddSeconds()); Thread.Sleep(); Console.WriteLine("Redis 有-> " + cars.GetAll().Count + " 辆汽车。");
var carsFromRedis = cars.GetAll().Where(car => car.Make.Name == "比亚迪"); foreach (var car in carsFromRedis)
{
Console.WriteLine("Redis 有 ->" + car.Title);
}
}
}
Console.ReadLine();
}
} public class Car
{
public long Id { get; set; }
public string Title { get; set; }
public string Description { get; set; }
public Make Make { get; set; }
public Model Model { get; set; }
} public class Make
{
public int Id { get; set; }
public string Name { get; set; }
} public class Model
{
public int Id { get; set; }
public Make Make { get; set; }
public string Name { get; set; }
} }

配置文件:

<?xml version="1.0"?>
<configuration>
<configSections>
<section name="RedisConfig" type="RedisTutorial.RedisConfigInfo, RedisTutorial"/>
</configSections>
<RedisConfig WriteServerList="192.168.77.27:6379"
ReadServerList="192.168.77.27:6379"
MaxWritePoolSize="60"
MaxReadPoolSize="60"
AutoStart="true"
LocalCacheTime="180"
RecordeLog="false">
</RedisConfig>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>

测试代码下载:点我下载

参考:ServiceStack.Redis 使用教程

其它资源:

redis在.net架构中的应用(1)--利用servicestack连接redis

谢谢浏览!

自己动手搭建 Redis 环境,并建立一个 .NET HelloWorld 程序测试的更多相关文章

  1. 自己动手搭建 Redis 环境,并建立一个 .NET HelloWorld 程序测试(转)

    关于 Redis ,下面来自百度百科: redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set( ...

  2. 自己动手搭建 MongoDB 环境,并建立一个 .NET HelloWorld 程序测试

    关于 MongoDB,下面来自百度百科: MongoDB[1]是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.   mongoDB[1] Mon ...

  3. Docker 安装 Redis, 搭建 Redis 环境

    欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 资深架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

  4. 【转】Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印。

    @2019-02-28 [小记] Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印.

  5. mac下搭建redis环境

    一.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有 ...

  6. 初识redis——mac下搭建redis环境

    一.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有 ...

  7. 搭建Vue.js环境,建立一个简单的Vue项目

    基于vue-cli快速构建 Vue是近年来比较火的一个前端框架,所以搭建Vue.js环境,要装webpack,vue-cli,Vue 安装webpack命令如下 $ cnpm install webp ...

  8. android 串口开发第一篇:搭建ndk开发环境以及第一个jni调用程序

    一:ndk环境搭建 1:开发环境 我使用的是android studio 2.3.3版本,搭建ndk开发环境比较简单,打开File----Settings----Appearance&Beha ...

  9. cocos2dx 3.x版本搭建Mac环境工程(创建一个新的C++工程)百分百可行

    首先第一篇,想学cocos2dx第一步就是搭建环境,第一步搭建不了环境,创建不了工程那一切都是扯淡. 说到mac下安装cocos2d-x想到的模式就是xcode+cocos2d-x.因为我本身就是一个 ...

随机推荐

  1. 菜鸟日记-HTML-表格与表单

    一.表格 <table></table> width:宽度.可以用像素或百分比表示. border:边框,常用值0 cellpadding:内容跟单元格边框的边距.常用值0 a ...

  2. linux C++ 获取文件绝对路径

    提供ftp服务时需要获取文件绝对路径,这里记录一下. #include <stdlib.h> #include <stdio.h> #include <limits.h& ...

  3. YChaos生成混沌图像

    YChaos是一款通过数学公式生成混沌图像的软件,展示混沌之美,数学之美.软件中定义一套简易的脚本语言,用于描述数学表达式.使用时需要先要将数学表达式写成该脚本的形式,解析脚本代码以生成相应的图形与图 ...

  4. 奇怪吸引子---TreeScrollUnifiedChaoticSystem

    奇怪吸引子是混沌学的重要组成理论,用于演化过程的终极状态,具有如下特征:终极性.稳定性.吸引性.吸引子是一个数学概念,描写运动的收敛类型.它是指这样的一个集合,当时间趋于无穷大时,在任何一个有界集上出 ...

  5. 数据导入读取read.table函数详解,如何读取不规则的数据(fill=T)

    函数 read.table 是读取矩形格子状数据最为便利的方式.因为实际可能遇到的情况比较多,所以预设了一些函数.这些函数调用了 read.table 但改变了它的一些默认参数. 注意,read.ta ...

  6. Nodejs npm安装socket.io报错解决办法

    安装socket.io时,报错,提示需要安装Microsoft visual studio 2005 或 Net framework 2.0 sdk,没有找到vcbuild.exe,解决办法是安装 . ...

  7. 【C++沉思录】句柄1

    1.在[C++沉思录]代理类中,使用了代理类,存在问题: a.代理复制,每次创建一个副本,这个开销有可能很大 b.有些对象不能轻易创建副本,比如文件2.怎么解决这个问题? 使用引用计数句柄,对动态资源 ...

  8. 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL[转]

    使用MySQL Migration Toolkit快速将Oracle数据导入MySQL上来先说点废话本人最近在学习一些数据库方面的知识,之前接触过Oracle和MySQL,最近又很流行MongoDB非 ...

  9. 北京地铁月度消费总金额计算(Python版)

    最近业余时间在学习Python,这是那天坐地铁时突发奇想,想看看我这一个月的地铁费共多少钱,所以简单的构思了下思路,就直接开写了,没想到用Python来实现还挺简单的. 设计思路: 每次乘车正常消费7 ...

  10. ATT 解锁手机

    最近豪们都在忙着买买买950 本土鳖左瞅瞅右看看实在钱包不够豪 正好看到美帝640打折39刀 (http://www.microsoftstore.com/store/msusa/en_US/pdp/ ...