|
|
@@ -32,7 +32,7 @@ namespace MySystem
|
|
|
{
|
|
|
{ "x-delay", delayMilliseconds } // 延迟5秒
|
|
|
};
|
|
|
- _channel_send.BasicPublish("kxs_direct_ranch", QueueName, properties, Encoding.Default.GetBytes(content));
|
|
|
+ _channel_send.BasicPublish("kxs_delay_ranch", QueueName, properties, Encoding.Default.GetBytes(content));
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -61,16 +61,16 @@ namespace MySystem
|
|
|
string[] subHostNameData = subHostName.Split(':');
|
|
|
p.Add(new AmqpTcpEndpoint(subHostNameData[0], int.Parse(subHostNameData[1])));
|
|
|
}
|
|
|
- var conn = factory.CreateConnection(p);
|
|
|
- _channel_send = conn.CreateModel();
|
|
|
- _channel_send.ExchangeDeclare("kxs_direct_ranch", "x-delayed-message", true);
|
|
|
+ _connection = factory.CreateConnection(p);
|
|
|
+ _channel_send = _connection.CreateModel();
|
|
|
+ _channel_send.ExchangeDeclare("kxs_delay_ranch", "x-delayed-message", true);
|
|
|
_channel_send.QueueDeclare(QueueName, true, false, false);
|
|
|
string routingKey = "delayed_routing_key";
|
|
|
IDictionary<string, object> arguments = new Dictionary<string, object>
|
|
|
{
|
|
|
{ "x-delayed-type", "direct" } // 这里可以指定不同的交换机类型
|
|
|
};
|
|
|
- _channel_send.QueueBind(QueueName, "kxs_direct_ranch", routingKey, arguments);
|
|
|
+ _channel_send.QueueBind(QueueName, "kxs_delay_ranch", routingKey, arguments);
|
|
|
}
|
|
|
|
|
|
public static IConnection _connection;
|
|
|
@@ -98,14 +98,14 @@ namespace MySystem
|
|
|
{
|
|
|
if (_connection == null)
|
|
|
{
|
|
|
- CreateConn();
|
|
|
+ CreateConn(QueueName);
|
|
|
}
|
|
|
else if (!_connection.IsOpen)
|
|
|
{
|
|
|
- CreateConn();
|
|
|
+ CreateConn(QueueName);
|
|
|
}
|
|
|
var channel = _connection.CreateModel();
|
|
|
- channel.QueueBind(QueueName, "kxs_direct_ranch", QueueName);
|
|
|
+ channel.QueueBind(QueueName, "kxs_delay_ranch", QueueName);
|
|
|
EventingBasicConsumer consumer = new EventingBasicConsumer(channel);
|
|
|
consumer.Received += (a, e) =>
|
|
|
{
|