2010-03-02 8 views
5

¿Alguien puede compartir una experiencia sobre escalar verticalmente el ActiveMQ? Estoy particularmente interesado cómo el rendimiento se ve afectado por: transportes¿Cómo escalas tu ActiveMQ verticalmente?

  • NIO
  • opción org.apache.activemq.UseDedicatedTaskRunner
  • deshabilitar tightEncoding en OpenWire
  • usando varios tipos de mensajes almacena (incluyendo KahaDB)

Respuesta

7

Los elementos que menciona arriba son todas las recomendaciones para escalar ActiveMQ como se enumeran en la página How do I configure 10s of 1000s of Queues in a single broker?. Utilicé cada una de estas tácticas en diversas situaciones en los sitios de los clientes y descubrí que ayudan considerablemente.

  • El transporte NIO es bueno para usar menos tomas cuando hay un alto número de conexiones en un corredor frente al transporte TCP. Esta eficiencia puede mejorar el rendimiento general del corredor.

  • Casi siempre recomiendo configurar org.apache.activemq.UseDedicatedTaskRunner=false simplemente porque ayuda considerablemente con el rendimiento.

  • Desactivar la codificación estricta es un cambio sutil y difícil de ver el beneficio. Depende de los tipos de mensajes que está enviando.

  • El KahaDB supera a cualquiera de las otras tiendas en cuanto a la mensajería persistente con ActiveMQ, especialmente en el enlace troncal. Hay un error que se soluciona solo en el tronco actualmente que causa un aumento dramático en el rendimiento persistente de los mensajes que será parte de 5.3.1 y 5.4.

Sé que esta información no es concreta, pero espero que todavía ayude.

Bruce

+0

Gracias. Estaba buscando exactamente ese tipo de información. Saludos. –