refcard - Neo4j REST API pérdida de memoria
neo4j tutorial (0)
Estoy actualizando continuamente un gráfico neo4j a través de la API REST con solicitudes simultáneas. Abro y cierro cada transacción de forma explícita, estoy utilizando el método de recolección de basura recomendado ( ConcurrentMarkSweep
), mis mapas de memoria son lo suficientemente grandes como para almacenar todo el gráfico en el caché, y aún así veo que la memoria de "Old Gen" se arrastra mucho más allá el tamaño del gráfico en sí, alcanzando 8 GB en alrededor de 4 millones de nodos y 15 millones de relaciones. ¿Hay alguien que haya tenido un problema parecido? Como estoy usando la API REST, es difícil descubrir dónde se está filtrando la memoria.
Otra información: estoy usando cache_type=strong
y un montón de 16 GB. He agregado estas banderas:
wrapper.java.additional=-XX:MaxTenuringThreshold=15
wrapper.java.additional=-XX:SurvivorRatio=20
wrapper.java.additional=-XX:NewRatio=1
para desalentar la promoción a la memoria anterior, pero tengo el problema tanto con ellos como sin ellos.