|
|
@@ -26,14 +26,30 @@ namespace Common
|
|
|
public static IConnection _connection;
|
|
|
public void CreateConn()
|
|
|
{
|
|
|
+ // var factory = new ConnectionFactory()
|
|
|
+ // {
|
|
|
+ // HostName = HostName,
|
|
|
+ // UserName = UserName,
|
|
|
+ // Password = Password,
|
|
|
+ // VirtualHost = VirtualHostName
|
|
|
+ // };
|
|
|
+ // _connection = factory.CreateConnection();
|
|
|
var factory = new ConnectionFactory()
|
|
|
{
|
|
|
- HostName = HostName,
|
|
|
UserName = UserName,
|
|
|
Password = Password,
|
|
|
- VirtualHost = VirtualHostName
|
|
|
+ AutomaticRecoveryEnabled = true, //如果connection挂掉是否重新连接
|
|
|
+ TopologyRecoveryEnabled = true, //连接恢复后,连接的交换机,队列等是否一同恢复
|
|
|
+ VirtualHost = VirtualHostName,
|
|
|
};
|
|
|
- _connection = factory.CreateConnection();
|
|
|
+ List<AmqpTcpEndpoint> p = new List<AmqpTcpEndpoint>();
|
|
|
+ string[] HostNames = HostName.Split(',');
|
|
|
+ foreach (string subHostName in HostNames)
|
|
|
+ {
|
|
|
+ string[] subHostNameData = subHostName.Split(':');
|
|
|
+ p.Add(new AmqpTcpEndpoint(subHostNameData[0], int.Parse(subHostNameData[1])));
|
|
|
+ }
|
|
|
+ _connection = factory.CreateConnection(p);
|
|
|
}
|
|
|
|
|
|
#region 单对单接收
|