错误发布消息从PostgreSQL到RABBITMQ使用AMQP扩展名 - 在Broker 1上登录失败



我试图将一条消息从Postgresql发布到RabbitMQ(均在Docker上运行)

SELECT amqp.publish(1, 'amqp.direct', 'EMAIL', 'message');

,但它返回false和警告消息:

警告:amqp [ my_host_address:my_port ]登录失败在经纪1

更新:Rabbitmq Docker容器日志中存在错误:

未能协商连接参数:协商Channel_max = 0 (无极限)高于最大允许值(2047)

amqp.broker表中的代理参数 - 主机,端口,虚拟主机,用户名,密码正确定义。可以使用Curl和相同的连接参数将消息从我的计算机控制台发布到RabbitMQ,并将其添加到消息队列中。

有两个可能的解决方案:

  1. 在Rabbitmq Portainer堆栈中添加环境变量:
    RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS: '-rabbit channel_max 0'
  1. 修复src/librabbitmq/amqp_socket.c

    https://github.com/omniti-labs/pg_amqp/issues/23

最新更新