RabbitMQ BrokerUnreachableException(.net 4.8 与 .NET 8.0)(不起作用/起作用)

问题描述 投票:0回答:1

我正在尝试连接到我的计算机上的本地主机 RabbitMQ 服务器并不断收到错误。

错误:

RabbitMQ.Client.Exceptions.BrokerUnreachableException:“指定的端点均无法访问。 IOException:从未收到connection.start,可能是由于网络超时 '

RabbitMQ 日志:

以下是该事件的rabbitMQ 日志。看来客户端只是关闭了连接。

2023-11-13 10:29:23.589000-06:00 [信息] <0.1615.0> 接受 AMQP 连接 <0.1615.0> ([::1]:64128 -> [::1]:5672) 2023-11-13 10:29:23.606000-06:00 [警告] <0.1615.0> 关闭 AMQP 连接 <0.1615.0> ([::1]:64128 -> [::1]:5672): 2023-11-13 10:29:23.606000-06:00 [警告] <0.1615.0> 客户端意外关闭 TCP 连接

一旦我的 .net 4.8 控制台应用程序到达 CreateConnection 点,就会抛出上述错误。

private static void Main(string[] args)
{
    string queueName = "EPLAN:JobProcessing";
    var factory = new ConnectionFactory
    {
        HostName = "localhost",
        UserName = "guest",
        Password = "guest"
    };
    using (var connection = factory.CreateConnection()) //Errors out here
    {
        using (var channel = connection.CreateModel())
        {
        
        }    
    }
}

但是,在我的 .NET 8.0 项目中,它连接得很好并且能够通信(使用基本上相同的代码)。我可以在 http://localhost:15672/ 中查看 RabbitMQ 管理 ui,所以我知道那里的一切都有效。

我尝试过的:

  • 在 .NET 4.8 项目上重新安装 RabbitMQ.Client。
  • 尝试在 services.msc 中重新启动 RabbitMQ 服务
  • 尝试使用新帐户而不是访客帐户,并为其指定管理员、决策者和管理标签。

版本:

  • RabbitMQ.Client版本6.6.0
  • 控制台应用程序(.Net 4.8)
  • Web API (.Net 8.0)

总的来说,我没有看到它应该在 .NET 8.0 上工作但在我的 .NET 4.8 项目上不起作用的真正原因?有人能指出我正确的方向吗?

c# .net .net-core rabbitmq messagebroker
1个回答
0
投票

我也有同样的问题,解决方法如下 RabbitMQ.Client:6.0.0 telnet mq主机:5672 RequestedHeartbeat = TimeSpan.FromSeconds(60) 自动恢复启用 = true 祝你好运!!! 在此输入图片描述

© www.soinside.com 2019 - 2024. All rights reserved.