如何增加 AmazonMQ 最大连接数

how to increase AmazonMQ maximum connections

2019-08-01 06:04:43,263 | ERROR | Could not accept connection : org.apache.activemq.transport.tcp.ExceededMaximumConnectionsException: Exceeded the maximum number of allowed client connections. See the 'maximumConnections' property on the TCP transport configuration URI in the ActiveMQ configuration file (e.g., activemq.xml) | org.apache.activemq.broker.TransportConnector | ActiveMQ Transport Server Thread Handler: nio+ssl://b-e13f27f2-1fa3-419f-819c-a24277e973a8-2.mq.us-west-2.amazonaws.com:61617?maximumConnections=100&wireFormat.maxFrameSize=104857600

在 amazonMQ 上获得上述异常,早些时候我们使用 activeMQ,我们在其中设置类似

<transportConnectors>
        <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
        <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireformat.maxFrameSize=104857600"/>
    </transportConnectors>

在 amazonMQ 中我们找不到这样的选项,代理抛出异常。我们在 amazonMQ 支持上检查了 transportConnector :

  1. 名字
  2. updateClusterClients
  3. rebalanceClusterClients
  4. updateClusterClientsOnRemove

知道如何增加最大连接数吗?

如所列 here 每个 AWS 账户都可以更改限制。

您将需要开具 AWS 支持票以请​​求提高限制

我想我不得不问,为什么这么多连接?

大型有 1000 个连接,微型允许 100 个连接。在您的错误消息中看到您有 100 个连接,您是在 Micro 上吗?也许 Micro 实例无法处理负载?

producers/consumers 是您控制的东西还是第三方应用程序?如果您可以这样做,我会在增加这些级别之前检查代码。连接将尽可能多地共享。完成后它们是否正确关闭?您所有的制作人都打开并维护自己的联系吗?

生产者连接应分组并与 PooledConnectionFactory 共享。