/// <summary>
        /// 消息接收事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        private static void ConsumerOnReceived(object sender, BasicDeliverEventArgs args)
        {
            try
            {
                //消息属性
                IBasicProperties properties = args.BasicProperties;
                //获取消息
                byte[] body = args?.Body;


                if (body == null || body.Length == 0)
                {
                    NLogHelper.Warn($"接收到空消息");
                    return;
                }

                RMqMessage msg = new RMqMessage()
                {
                    Id           = Guid.NewGuid().ToString(),
                    ContentBytes = body,
                    CreateTime   = DateTime.Now
                };

                RMqMessageHandler.Add(msg);
            }
            catch (Exception e)
            {
                NLogHelper.Error($"mq处理消息失败:{e}");
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 关闭定时器
        /// </summary>
        public static void Stop()
        {
            try
            {
                if (_mqTimer != null)
                {
                    _mqTimer.Dispose();
                    _mqTimer = null;
                }
            }
            catch
            {
                // ignored
            }

            //关闭MQ
            LongRunRabbitConsumer.StopConsumer();

            //关闭消息处理
            RMqMessageHandler.Stop();
        }