RabbitMQ - Exception (403) Reason: "no access to this vhost"
可能原因:
1)没有配置该用户的访问权限,可以通过rabbitmqctl add_vhost admin来添加,并赋予权限:
rabbitmqctl set_permissions -p 用户名 admin "." "." ".*"
代码在连接的时候,必须制定对应的vhost,否则是没有访问权限:
conn, err := amqp.Dial("amqp://sky:password@ip:5672/admin”)
2)MQ服务端配置了客户端的连接数量,已超过最大数从而限制了该连接(需要在客户端、代码层面释放资源)
conn := initMq()
defer conn.Close()
// 创建Channel
ch, err := conn.Channel()
if err != nil {
global.Logger.Error("get mq channel error", zap.Error(err))
LogErr("get mq channel error: err = ", err)
return
}
defer func() {
_ = ch.Close()
}()