VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • 使用EventBus + Redis发布订阅模式提升业务执行性能(下)(2)

  

可以看到,我们已经将事件总线相关代码给移除了,上面代码除了向Redis的队列(List)里写入元素外就只是对订单进行了持久化动作,所以看代码就知道执行效率的提升了。
接下来,看消费服务的代码。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
static void Main(string[] args)
{
    XTrace.UseConsole();
    Console.WriteLine("进入Redis消息订阅者模式订单消息推送订阅者客户端!");
 
    EventBus eventBus = new EventBus();
    eventBus.EventRegister(typeof(OrderCreateEventNotifyHandle), typeof(OrderCreateEventData));
    eventBus.EventRegister(typeof(OrderCreateEventStockLockHandle), typeof(OrderCreateEventData));
 
    FullRedis fullRedis = new FullRedis("127.0.0.1:6379""", 1);
    fullRedis.Log = XTrace.Log;
    fullRedis.Timeout = 30000;
    OrderModel order = null;
    while (order == null)
    {
        order = fullRedis.BLPOP<OrderModel>("orders", 20);
        if (order != null)
        {
            Console.WriteLine($"得到订单信息:{JsonConvert.SerializeObject(order)}");
            //执行相关事件
            eventBus.Trigger(new OrderCreateEventData()
            {
                Order = order,
            });
            //再次设置为null方便循环读取
            order = null;
        }
          
    }
    Console.ReadLine();
}

相关教程