public void OverviewTest() { RabbitMQModel result = RabbitMQManager.GetOverview(); Assert.IsNotNull(result.MessageStats); Assert.IsNotNull(result.QueueTotals); Assert.IsNotNull(result); }
/// <summary> /// 接收命令处理 /// </summary> private static void ReceiveCommandLoop() { LogHelper.WriteInfo("准备接收消息"); RabbitMQModel model = new RabbitMQModel(); model.HostName = "localhost"; model.UserName = "******"; model.Password = "******"; model.QueueName = "NodeService"; RabbitMQHelper.Receive(model, (c) => { if (!string.IsNullOrEmpty(c)) { LogHelper.WriteInfo("接收消息" + c); Command cmd = LibJsonConvert.DeserializeObject <Command>(c); CommandFactory.Execute(cmd); } }); }
public bool Connection(HostModel hostModel) { bool sflag = true; RabbitMQModel rabbitMQModel = null; Dictionary <string, RabbitMQModel> rabbitmqDictionary = RabbitMQServices.GetInstance().GetRabbitMQconn(); if (rabbitmqDictionary.Count > 0) { rabbitMQModel = rabbitmqDictionary["test"]; } else { rabbitMQModel = new RabbitMQModel(hostModel); lock (rabbitmqDictionary) { RabbitMQServices.GetInstance().SetRabbitMqConn("test", rabbitMQModel); rabbitMQModel.Connection(); } } return(sflag); }
public static RabbitMQInstance GetRabbitMQInstance(RabbitMQModel rabbitMQModel) { if (rabbitMQModel == null) { return(null); } var _factory = new ConnectionFactory { HostName = rabbitMQModel.HostName, Port = rabbitMQModel.Port, VirtualHost = rabbitMQModel.VirtualHost, UserName = rabbitMQModel.UserName, Password = rabbitMQModel.Password }; var _connection = _factory.CreateConnection(); var _rabbitMQModel = rabbitMQModel; var _channel = _connection.CreateModel(); var instance = new RabbitMQInstance(_factory, _connection, _rabbitMQModel); _channel.ExchangeDeclare(rabbitMQModel.Exchange, ExchangeType.Direct, durable: true, autoDelete: false, arguments: null); _channel.QueueDeclare(rabbitMQModel.Queue, durable: true, exclusive: false, autoDelete: false, arguments: null); _channel.QueueBind(rabbitMQModel.Queue, rabbitMQModel.Exchange, rabbitMQModel.RoutingKey, null); return(instance); }
public static RabbitMQModel GetRabbitMQModel(IConfigurationSection publish) { if (publish == null) { return(null); } RabbitMQModel rabbitMQModel = new RabbitMQModel(); rabbitMQModel.PublishName = publish.GetSection("PublishName").Value; rabbitMQModel.ConsumerType = publish.GetSection("ConsumerType").Value; rabbitMQModel.Exchange = publish.GetSection("Exchange").Value; rabbitMQModel.HostName = publish.GetSection("HostName").Value; rabbitMQModel.Password = publish.GetSection("Password").Value; string sPort = publish.GetSection("Port").Value; int port = 0; int.TryParse(sPort, out port); rabbitMQModel.Port = port; rabbitMQModel.Queue = publish.GetSection("Queue").Value; rabbitMQModel.RoutingKey = publish.GetSection("RoutingKey").Value; rabbitMQModel.UserName = publish.GetSection("UserName").Value; rabbitMQModel.VirtualHost = publish.GetSection("VirtualHost").Value; return(rabbitMQModel); }
private RabbitMQInstance(ConnectionFactory _factory, IConnection _connection, RabbitMQModel _rabbitMQModel) { this.Connection = _connection; this.Factory = _factory; this.Channel = Connection.CreateModel(); this.RabbitMQModel = _rabbitMQModel; }
public DirectPost(HostModel hostModel) { rabbitMQModel = new RabbitMQModel(hostModel); rabbitMQModel.Connection(); }