2009-07-29 9 views
5

Me gustaría utilizar el caché Ehcache replicado, primero como el backend para Hibernar el segundo nivel de caché, el segundo como un caché para cualquier dato.Ehcache rendimiento en un gran clúster

Sé cómo funciona un caché distribuido como memcached, y sé que puede escalar a clústeres grandes, pero no puedo encontrar cómo se comporta la replicación de Ehcache en clústeres grandes.

  • ¿Alguien tiene un puntero a alguna información o algún tipo de punto de referencia?

Descubrí que se pueden utilizar muchas estrategias de replicación, como RMI, JGroups, JMS o Terracotta, y RMI y Terracotta parecen ser las más populares.

  • ¿Cómo se comparan en clusters grandes?

¿La replicación matará mis actuaciones ya que agrego muchos nodos (como varias docenas)?

Respuesta

1
+0

Por supuesto que leí el manual, pero no encontré cómo se realiza la replicación: ¿se actualizan todos los nodos cada vez que actualizo la caché en un nodo? – Jazz

+3

Los documentos ehcache sobre esto no son realmente lo suficientemente buenos. Le dice cómo integrarse con la tecnología de distribución, pero eso es todo. – skaffman

+0

Los documentos de Ehacahe aún no son lo suficientemente buenos, incluso en 2012 –

3

Una buena solución al problema de escala cluster es la noción de "replicación de amigos ", donde los datos solo se replican en cada gesto Los vecinos de e (como quiera que lo defina), más bien a todos los nodos. Obtiene la conmutación por error sin el problema de escalado.

Que yo sepa, ehcache no hace esto. Sin embargo, JBossCache sí, y eso también se integra con Hibernate de la misma manera que ehcache.

4

La memoria caché totalmente replicada solo funcionará si su aplicación se lee principalmente. La memoria caché replicada no puede escalar; pasar las actualizaciones a los otros nodos matará tu rendimiento. Necesita caché particionada con réplicas de respaldo. Los cachés particionados se escalarán linealmente incluso para las aplicaciones de escritura intensiva.

Probar Hazelcast! es una solución de caché transaccional y particionada de código abierto (licencia de Apache) para Java. Viene con el complemento de caché de segundo nivel de hibernación.

¿Varias docenas? No hay problema. La demostración del clúster Hazelcast de 100 nodos puede ser found here.

Cuestiones relacionadas