分享一个Redis帮助类

最近在项目中使用了redis来存储已经下载过的URL,项目中用的是ServiceStack来操作Redis,一开始ServiceStack的版本用的是最新的,后来发现ServiceStack已经商业化了,非商业版本每个小时只能操作6000次Redis,后来把ServiceStack换成了V3版本。

在项目中用到了redis的Hash集合,但是ServiceStack封装的使用起来不方便,于是就自己封装了一个dll,利用的ServiceStack的pool来动态创建IRedisClient实例,创建了一个抽象类RedisOperatorBase封装了一些基本方法。比较简单,相信大家一看代码就会。

代码Github下载地址:https://github.com/dazhuangtage/RedisDemo/

下面贴上最简单的用法:

首先配置文件配置节点:

 <configSections>
    <section name="RedisTools" type="RedisTools.RedisConfig, RedisTools"/>
  </configSections>
 <RedisTools WriteServerList="127.0.0.1:6379" ReadServerList="[email protected]:6379" MaxWritePoolSize="60" MaxReadPoolSize="60" AutoStart="true" LocalCacheTime="180" RecordeLog="false"/>
</configuration>

使用方法:

        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        static void Main(string[] args)
        {
            var hashOperator = new HashOperator();
            hashOperator.Set("test", "name", "大壮他哥");
            Console.WriteLine(hashOperator.Get<string>("test", "name"));
            Console.ReadKey();
        }    

如果大家要扩展一个帮助类,只需要继承RedisOperatorBase就可以了。

时间: 2024-08-03 09:56:02

分享一个Redis帮助类的相关文章

分享一个记录日志的类,可多线程使用。

好久没写博客了,今天分享一个自己用的日志类,非原创,借鉴了前辈的一个想法,然后修改来的. 日志我们是必须的,现在程序都是多线程并发了,记日志就有可能出现问题了,lock?影响性能.log4net太重量级了,本日志是一个轻量级的小工具. 废话不多说,看源码: 1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System.Text; 5 6 namespace GEDU.CourseOnli

[原创]分享一个轻量级日志类

日常开发中,常常会在程序部署到生产环境后发现有些问题,但无法直接调试,这就需要用到日志,本来想找一些开源的完善的日志类来实现,但试了几个都感觉太重.于是意识到一个问题,懒是偷不得的,只好撸起袖子,自己写一个.这个日志类是基于订阅模式的,而且是线程安全的,现在分享给大家,希望能给大家带来帮助. 闲话不多说,直接上代码.代码有两个实现版本(Java与C#),这里放出的是C#. 一共用到三个类:JzgLogs.cs主类,LogBuffer.cs日志缓冲类,LogInfo是用于日志缓冲中做记录的实体类,

今天分享一个抽奖的类Lottery

/* * Copyright (C) 2014 Jason Fang ( [email protected] ) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://

StackExchange.Redis帮助类解决方案RedisRepository封装(基础配置)

本文版权归博客园和作者吴双本人共同所有,转载和爬虫,请注明原文地址.http://www.cnblogs.com/tdws/p/5815735.html 写在前面 这不是教程,分享而已,也欢迎园友们多提建议和指正.关于更多详细介绍,请到github上看Docs,下面附上地址. 关于Redis基础控制它台操作有疑问的,欢迎阅读本人Redis系列命令拾遗分享 http://www.cnblogs.com/tdws/tag/NoSql/ 如今StackService.Redis已经转向商业版本.4.0

写一个Redis封装类

打算自己封装一个Redis操作类,方便使用,且有一定log记录.Redis的封装思路:基于Redis类进一步封装 一般属性 单例 (配置参数从配置文件中读取还是写死?考虑多配置之间切换) 常规操作根据业务单独处理.(注意健壮性和容错) 目的不同,可能做的封装也同.我们要基于业务做一些抽象程度较低的封装,也会根据需要,做一些tool级别的高抽象的封装.如果抽象的足够高,可以让通用性变得更好.这次封装Redis,我先做一个通用性的Redis操作类,先仅作最基本的一些操作. 代码如下: <?php /

分享一个简单的简单的SQLHelper类

分享一个简单的简单的SQLHelper类,代码如下: 1 class SqlHelper 2 { 3 public static readonly string connstr = 4 ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString; 5 6 public static int ExecuteNonQuery(string cmdText, 7 params SqlParameter[] para

分享一个PHP调试日志类

分享一个我自己用的在 WordPress 开发中用得到的一个调试日志类. <?php /** * @author: suifengtec coolwp.com * @date: 2013-02-03 09:55:55 * @last Modified by: suifengtec coolwp.com * @last Modified time: 2015-07-12 18:40:02 */ if(function_exists('add_action')){ defined('ABSPATH'

分享一个SqliteHelper类

分享一个SqliteHelper类 SQLite作为一个本地文件数据库相当好用,小巧.快速.支持事务.关系型,甚至可以运行在Android上.在很久以前的一个项目中,我们用过它来将接收到的数据做本地统计,数据量很大,甚至于我们想自己搞个内存空间专门做缓存,缓存满后再一点点地往SQLite中移,现在看起来是多余的,这也不符合开发的过程.在开发中,应该先把功能做出来,如果有性能问题,再找出解决方法.直接在SQLite中做插入而不是先在内存中做,它的效率已经达到了要求. 现在跟大家分享一个对SQLit

分享一个线程安全的单例模板类

单例模式应该说是最简单的设计模式了.在此分享一个线程安全的单例模板类. template <typename Type> class CSingleton { public: static Type* GetInstance() { // kBeingCreatedMarker用来表示单例实例正在创建过程中. // 此处初始化为1是因为操作系统不会分配地址为1的指针. static const volatile intptr_t kBeingCreatedMarker = 1; // 如果m_