neo4j cypher query-cpu usage profiler

时间:2015-11-23 08:46:39

标签: neo4j cypher

我看到很多cypher查询的cpu接近100%,这是一台强大的机器运行(16核,110 GB RAM,10GB neo4j数据库的SSD等)

有没有办法为db hits之外的其他方面分析cypher查询?例如:cpu使用每个语句,锁等

服务器配置:

的Neo4j的包装器:

wrapper.java.initmemory=31768
wrapper.java.maxmemory=31768

neo4j.properties:

  dbms.pagecache.memory=70g

java -XX:+ PrintFlagsFinal -version | grep -e'(Initial \ | Max)HeapSize'

Picked up _JAVA_OPTIONS: -Xmx32g -Xms32g
uintx InitialHeapSize                          := 34359738368                         {product}
uintx MaxHeapSize                              := 34359738368                         {product}

jstack输出: https://www.dropbox.com/s/ktvflamjqoz9dnu/sudo_jstack%20_13453?dl=0

enter image description here

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

我不知道如何分析CPU使用情况的特定查询,但您是否配置了Neo4j以允许它使用更多内存?它使用了多少内存?

此外,这是生产中有多个查询命中数据库,还是您自己使用Web控制台进行查询?如果是后者,即使您已取消查询,有时查询仍将继续运行。您可以通过设置query timeout(比如60秒)来帮助缓解这种情况。