Мы используем более старую версию ActiveMQ (5.3.2) (см .: Надежен ли activemq? )
Мы убрали постоянство, потому что нам нужно было больше скорости. Наш работник может не отставать от сообщений, но, хотя очередь, как правило, находится в состоянии ожидания 0, после обработки около 45000 сообщений (длина сообщения обычно составляет 100 символов), размер файла Page составляет 8 ГБ !! Это не останавливается на достигнутом, продолжается до 15 ГБ (наш сервер имеет 16 ГБ памяти)!
Остановка процесса ActiveMQ не очищает этот файл подкачки, он остается таким огромным неопределенно долго.
это настройки, которые мы используем:
<policyEntry queue=">" producerFlowControl="false" memoryLimit="2gb">
</policyEntry>
и
<systemUsage>
<systemUsage>
<memoryUsage>
<memoryUsage limit="20 mb"/>
</memoryUsage>
<storeUsage>
<storeUsage limit="1 gb"/>
</storeUsage>
<tempUsage>
<tempUsage limit="100 mb"/>
</tempUsage>
</systemUsage>
</systemUsage>
Что нам нужно сделать, чтобы сохранить использование памяти на «нормальном» уровне?
Наш сервер: Windows 2003 (64bit). ActivemQ (5.3.2), с битом Java64 (1.6.0__22)