StackExchange.Redis实现Redis发布订阅

由于ServiceStack.Redis最新版已经收费,所以现在大家陆陆续续都换到StackExchange.Redis上了,关于StackExchange.Redis详细可以参看Github

https://stackexchange.github.io/StackExchange.Redis/的官方文档

先看一下效果图

StackExchange.Redis实现Redis发布订阅_第1张图片

StackExchange.Redis实现Redis发布订阅_第2张图片这是项目解决方案,COMMON里面放置的是StackExchange.Redis 通用类的封装,已经在实际项目中使用,目前感觉良好

该Demo主要包括两部分,

一:发布

static async Task Pub()
        {
            Console.WriteLine("请输入要发布向哪个通道?");
            var channel = Console.ReadLine();

            await Task.Delay(10);
            for(int i = 0; i < 10; i++)
            {
                await _redis.PublishAsync(channel, i.ToString());
            }
                
        }

 

二:订阅

 

static async Task Sub()
        {
            Console.WriteLine("请输入您要订阅哪个通道的信息?");
            var channelKey = Console.ReadLine();
            await _redis.SubscribeAsync(channelKey, (channel, message) =>
            {
                Console.WriteLine("接受到发布的内容为:" + message);
            });
            Console.WriteLine("您订阅的通道为:<< " + channelKey + " >> ! 请耐心等待消息的到来!!");
        }

最后附上GitHub地址

https://github.com/xiaopotian1990/RedisDemo

你可能感兴趣的:(开源软件)