한 번에 총 요청 수가 증가하면 숫자가 늘어남에 따라 교환 대기열이 구성 요소 중 하나에서 멈추게됩니다.
ActiveMQ는 프로듀서 작성 메시지를 멈추게하는 메커니즘이 있는데, "흐름 제어"라고합니다. 프로듀서가 소비자보다 빠르거나 (소비자가 속도가 안정적이지 않은 것 같습니다) 먼저 memoryLimit 구성을 확인하십시오. AMQ (가능하거나 특별 대기열을 정의 할 수도 있음). 그것을 증가 시키십시오.
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry topic="FOO.>" producerFlowControl="false" memoryLimit="1mb">
<dispatchPolicy>
<strictOrderDispatchPolicy/>
</dispatchPolicy>
<subscriptionRecoveryPolicy>
<lastImageSubscriptionRecoveryPolicy/>
</subscriptionRecoveryPolicy>
</policyEntry>
</policyEntries>
</policyMap>
또한
, 당신은
producerFlowControl="false"
옵션을 사용하여 들어오는 메시지를 처리의 정지를 해제 할 수 있습니다. 따라서 모든 버퍼가 사용될 경우 AMQ가 느려지고 모든 메시지가 HD에 저장됩니다. 더 많은 정보
Producer Flow Control 및
Message Cursors
컨테이너의 힙 크기로 매우 높은 도달 시간 후 충돌하고 자동으로 다시 시작됩니다.
어쨌든,이 앱 튜닝의 단지 방법은 일부 자원이
당신은 들어오는 요청 또는 균형을 제한해야합니다 :) 밖으로 실행할 때 항상이 사건을 가지고 있기 때문에, 그것은 해결책이 아니다 그들 fe 사용 Pound