Redis中ServiceStack.Redis和StackExchange.Redis区别详解

 更新时间:2022年05月25日 15:30:47   作者:不会搬砖的程序猿  
本文主要介绍了Redis中ServiceStack.Redis和StackExchange.Redis区别详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

目前Redis已经更新到了6.0.2,那目前StackExchange.Redis 和 ServiceStack.Redis 两个客户端有什么区别呢?

StackExchange.Redis 客户端是开源免费,而ServiceStack.Redis目前我测试了4.0以上版本就有每个小时6000的限制。性能方面,对比测试,ServiceStack比StackExchange性能上高将近50%。

在这里插入图片描述

在这里插入图片描述

以上分别是5000条和10w条数据写入读入比对,我这是将ServiceStack解除了每小时6000条数据的限制,以下是测试代码:

		static void Main(string[] args)
    	{
            DateTime time1 = DateTime.Now;
            DateTime time2 = DateTime.Now;
            #region  StackExchange
            {
                IConnectionMultiplexer proxy = ConnectionMultiplexer.Connect("127.0.0.1,abortConnect=false");
                //proxy.GetServer("host",6379).FlushDatabase(0);
                IDatabase db = proxy.GetDatabase();
                db.KeyDelete("Key1");
                time1 = DateTime.Now;
                for (int i = 0; i < 100000; i++)
                {
                    db.StringSet("Key1", "这是StackExchange");
                }
                time2 = DateTime.Now;
                Console.WriteLine("StackExchange 赋值 100000 次, 耗时: {0} 秒", (time2 - time1).TotalSeconds);

                time1 = DateTime.Now;
                for (int i = 0; i < 100000; i++)
                {
                    RedisValue value = db.StringGet("Key1");
                }
                time2 = DateTime.Now;
                Console.WriteLine("StackExchange 取值 100000 次, 耗时: {0} 秒", (time2 - time1).TotalSeconds);
                Console.WriteLine("----------------------------------");
            }
            #endregion


            #region  ServiceStack
            using (RedisClient redisClient = new RedisClient("127.0.0.1", 6379))
            {
                redisClient.FlushDb();
                redisClient.FlushAll();
                time1 = DateTime.Now;
                for (int i = 0; i < 100000; i++)
                {
                    redisClient.Set("Key2", "这是ServiceStack");
                }
                time2 = DateTime.Now;
                Console.WriteLine("ServiceStack 赋值 100000 次, 耗时: {0} 秒", (time2 - time1).TotalSeconds);

                Thread.Sleep(1000);
             
                time1 = DateTime.Now;
                for (int i = 0; i < 100000; i++)
                {
                     redisClient.Get<string>("Key2");
                }
                time2 = DateTime.Now;
                Console.WriteLine("ServiceStack 取值 100000 次, 耗时: {0} 秒", (time2 - time1).TotalSeconds);
                Console.WriteLine("----------------------------------");
            }
            #endregion
    	}

到此这篇关于Redis中ServiceStack.Redis和StackExchange.Redis区别详解的文章就介绍到这了,更多相关ServiceStack.Redis和StackExchange.Redis区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Redis底层数据结构详解

    Redis底层数据结构详解

    这篇文章主要介绍了Redis底层数据结构,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • Redis服务器优化方式

    Redis服务器优化方式

    文章分享了常见的Redis服务器优化技巧和策略,主要包括内存管理、持久化配置、连接配置和网络优化四个方面,内存管理主要是设置maxmemory参数和选择合适的内存淘汰策略,持久化配置包括RDB持久化和AOF持久化
    2024-09-09
  • Redis集群的搭建图文教程

    Redis集群的搭建图文教程

    下面小编就为大家分享一篇Redis集群的搭建图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • redis-copy使用6379端口无法连接到Redis服务器的问题

    redis-copy使用6379端口无法连接到Redis服务器的问题

    这篇文章主要介绍了redis-copy使用6379端口无法连接到Redis服务器的问题的相关资料,需要的朋友可以参考下
    2023-05-05
  • Redis源码解析:集群手动故障转移、从节点迁移详解

    Redis源码解析:集群手动故障转移、从节点迁移详解

    这篇文章主要介绍了Redis源码解析:集群手动故障转移、从节点迁移的相关内容,涉及通过集群定时器函数clusterCron实现从节点迁移等知识,具有一定参考价值,需要的朋友可以了解。
    2017-10-10
  • 在redisCluster中模糊获取key方式

    在redisCluster中模糊获取key方式

    这篇文章主要介绍了在redisCluster中模糊获取key方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 一文详解Redis在Ubuntu系统上的安装步骤

    一文详解Redis在Ubuntu系统上的安装步骤

    安装redis在Ubuntu上有多种方法,下面这篇文章主要给大家介绍了关于Redis在Ubuntu系统上安装的相关资料,文中通过图文以及代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • 详解redis集群选举机制

    详解redis集群选举机制

    这篇文章主要介绍了详解redis集群选举机制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • redis监听key过期事件的详细步骤

    redis监听key过期事件的详细步骤

    本文主要介绍了redis监听key过期事件的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Redis去重的3种不同方法汇总

    Redis去重的3种不同方法汇总

    Redis是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库,下面这篇文章主要给大家介绍了关于Redis去重的3种不同方法,需要的朋友可以参考下
    2021-11-11

最新评论