ServiceStack.redis用法
using System;
using System.Collections.Generic;
using ServiceStack.Redis; namespace SysBuild
{
class Program
{
//linux服务器地址
static private string host = "182.180.50.168";
//static private string host = "127.0.0.1";
static private int port = 6379;
static RedisClient redisClient = new RedisClient(host, port);//redis服务IP和端口
static void Main(string[] args)
{
//创建一个键a,指定值
redisClient.Set<string>("a", "1");
//获取键a对应的值
var a1 = redisClient.Get<string>("a");
//删除键a
redisClient.Remove("a");
//创建一个键a,指定值,并指定10s有效
redisClient.Set<string>("b", "1", new TimeSpan(0, 0, 60)); //队列操作之入队
redisClient.EnqueueItemOnList("list", "haha");
redisClient.EnqueueItemOnList("list", "haha111111111");
redisClient.EnqueueItemOnList("list", "haha22");
redisClient.EnqueueItemOnList("list", "hahset33333333333333333");
//读取队列深度
var a = redisClient.GetListCount("list");
//队列操作之出队
for (int i = 0; i < a; i++)
{
Console.WriteLine(redisClient.DequeueItemFromList("list"));
} redisClient.SetEntryInHash("Hash", "Name", "wujf");
redisClient.SetEntryInHash("Hash", "Age", "99");
redisClient.SetEntryInHash("Hash", "Sex", "男");
redisClient.SetEntryInHash("Hash", "Address", "上海市XX号XX室");
//集合类指定超时的方法
redisClient.ExpireEntryIn("Hash", new TimeSpan(0, 0, 100));
var dic = redisClient.GetAllEntriesFromHash("Hash");
Console.WriteLine("Key-----Value");
foreach (var keyVal in dic)
{
Console.WriteLine(string.Format("{0}-----{1}", keyVal.Key, keyVal.Value));
}
List<string> haskKey = redisClient.GetHashKeys("Hash");
List<string> haskVal = redisClient.GetHashValues("Hash");
foreach (string key in haskKey)
{
Console.WriteLine("HashID--Key:{0}", key);
}
foreach (string val in haskVal)
{
Console.WriteLine("HashID--val:{0}", val);
} //栈使用,先进后出
redisClient.PushItemToList("stack", "1");
redisClient.PushItemToList("stack", "2");
redisClient.PushItemToList("stack", "3");
redisClient.PushItemToList("stack", "4");
int count = redisClient.GetListCount("stack");
for (int i = 0; i < count; i++)
{
Console.WriteLine(redisClient.PopItemFromList("stack"));
} //对Set类型进行操作
redisClient.AddItemToSet("set", "ddd");
redisClient.AddItemToSet("set", "ccc");
redisClient.AddItemToSet("set", "tttt");
redisClient.AddItemToSet("set", "sssh");
redisClient.AddItemToSet("set", "hhhh");
HashSet<string> hashset = redisClient.GetAllItemsFromSet("set");
foreach (string str in hashset)
{
Console.WriteLine(str);
} //求并集
redisClient.AddItemToSet("set1", "aa");
redisClient.AddItemToSet("set1", "bb");
redisClient.AddItemToSet("set2", "bb");
redisClient.AddItemToSet("set2", "cc");
hashset = redisClient.GetUnionFromSets(new string[] { "set1", "set2" });
foreach (string str in hashset)
{
Console.WriteLine(str);
}
//求交集
hashset = redisClient.GetIntersectFromSets(new string[] { "set1", "set2" });
//求差集.
hashset = redisClient.GetDifferencesFromSet("set1", new string[] { "set2" }); //Sorted Set类型排序
redisClient.AddItemToSortedSet("sortList", "1");
redisClient.AddItemToSortedSet("sortList", "9");
redisClient.AddItemToSortedSet("sortList", "3");
redisClient.AddItemToSortedSet("sortList", "8");
List<string> sortList = redisClient.GetAllItemsFromSortedSet("sortList");
foreach (string str in sortList)
{
Console.WriteLine(str);
} Console.ReadKey();
}
}
}
ServiceStack.redis用法的更多相关文章
- .Net使用Redis详解之ServiceStack.Redis(七)
序言 本篇从.Net如何接入Reis开始,直至.Net对Redis的各种操作,为了方便学习与做为文档的查看,我做一遍注释展现,其中会对list的阻塞功能和事务的运用做二个案例,进行记录学习. Redi ...
- ServiceStack.Redis订阅发布服务的调用(Z)
1.Redis订阅发布介绍Redis订阅发布是一种消息通信模式:发布者(publisher)发送消息,订阅者(Subscriber)接受消息.类似于设计模式中的观察者模式.发布者和订阅者之间使用频 ...
- serviceStack.Redis 在PooledRedisClientManager 中设置密码
ServiceStack.Redis 是一个C#访问Redis的客户端,可以说可以通过它实现所有需要Redis-Cli的功能.但是今天我在主Redis 实例设置了访问密码,而在slave 上没有设置, ...
- ServiceStack.Redis订阅发布服务的调用
1.Redis订阅发布介绍 Redis订阅发布是一种消息通信模式:发布者(publisher)发送消息,订阅者(Subscriber)接受消息.类似于设计模式中的观察者模式. 发布者和订阅者之间使用频 ...
- Redis简介、与memcached比较、存储方式、应用场景、生产经验教训、安全设置、key的建议、安装和常用数据类型介绍、ServiceStack.Redis使用(1)
1.NOSQL简介 nosql的产生并不是要彻底的代替关系型数据库,而是作为传统关系型数据库的一个补充. Facebook和360使用Cassandra来存储海量社交数据 Twitter在其url抓取 ...
- ServiceStack.Redis 使用教程
http://www.cnblogs.com/shanyou/archive/2011/11/10/2245082.html https://github.com/ServiceStack/Servi ...
- 在使用Redis的客户端连接工具ServiceStack.Redis要注意的问题
在使用Redis的客户端连接工具ServiceStack.Redis要注意的问题 Redis是一个非常NB的内存级的数据库,我们可以把很多”热数据“(即读写非常多的数据)放入其中来操作,这样就减少 ...
- 关于 ServiceStack.Redis 4.0 License
今天更新了框架中的Redis驱动ServiceStack.Redis,最新版本4.0.5.0. 在做简单压力测试时出现异常,提示每小时允许6000个请求. The free-quota limit o ...
- ServiceStack.Redis.RedisNativeClient的方法“get_Db”没有实现
Redis 4.0.0.0版本已经开始收费 Redis 4.0.5.0 已经完成收费 今日在更换Redis版本时 出现了ServiceStack.Redis.RedisNativeClient的方法“ ...
随机推荐
- RK3288 usb 摄像头旋转
系统:Android 5.1 下面实现了摄像头 180 度旋转,旋转角度只需修改 orientation. diff --git a/hardware/rockchip/camera/CameraHa ...
- 安装QConfig备忘
下载wget https://github.com/Qihoo360/QConf/archive/1.2.1.tar.gz 解压tar -zxf 1.2.1.tar.gz进入目录cd QConf-1. ...
- MOSS 2013研究系列---Win2008R2 建立域控时候,报密码不符合要求解决办法
今天远程给Win2008R2装AD域控的时候,突然报如下的错误页面: 修改了密码,将密码强度设置复杂了,但是,仍然会弹出这个错误页面,估计是因为远程账号的关系,于是再网上搜下了一下,找到了一个解决方案 ...
- Ubuntu上kubeadm安装Kubernetes集群
一 创建VM 3台VM,其中一台为master节点,2台work node: 二 安装相关软件 在所有节点上运行: apt-get update apt-get install apt-transpo ...
- OkHttp使用方法
1.在app/build.gradle中添加依赖 compile 'com.squareup.okhttp3:okhttp:4.0.1' 2.创建OkHttpClient实例 OkHttpClient ...
- python 发红包
import random li = [] def fahongbao(money,num=6): if money > 0 and num != 1: n = round(random.uni ...
- 列表:list[1],切片list[1:3],追加insert,修改,删除remove,del,pop,查找index,统计count,清空list.clear() 翻转list.reverse(),排序list.sort(),扩展list.extend,
列表的定义: 列表的使用以及取值:用逗号的方式,取列表两个值,会打印出2个项目,两个项目之间自动有一个空格. 如果想取中间几个值: 请注意,如果取值1和2,那么要写[1,3],要记住这里是顾头不顾尾. ...
- java基础-构建命令行运行的java程序简要注意
今天编写了一个运行在服务端的java工具类,才发现自己以前很少关注运营方面的内容,导致在服务端部署一个java的工具变得异常困难,其实这也是自己对java的了解不够造成的. 首先,当代码编写完成之后, ...
- Linux学习笔记 - Shell 函数的使用
基本语法 funname () { action; return -)):如果不加,将以最后一条命令运行结果,作为返回值. } 示例1:定义并调用无返回值的函数 #!/bin/bash a= b= c ...
- CentOS7 tar打包工具 打包,解包,打包压缩,打包解压缩
tar命令 選項與參數: -c :建立打包檔案,可搭配 -v 來察看過程中被打包的檔名(filename) -t :察看打包檔案的內容含有哪些檔名,重點在察看『檔名』就是了: -x :解打包或解壓縮的 ...