我在大约 1 分钟内运行了大约 3k 个写查询,CPU 达到 100%。这是 jstack 日志: jstack when CPU at 100%。
谁能告诉我 jstack 日志中发生了什么,以便我可以优化我的写入?
我正在使用 Node.js Neo4J 客户端(在 m3.xlarge AWS 实例上运行)来编写我的更改。
谢谢你。
我在大约 1 分钟内运行了大约 3k 个写查询,CPU 达到 100%。这是 jstack 日志: jstack when CPU at 100%。
谁能告诉我 jstack 日志中发生了什么,以便我可以优化我的写入?
我正在使用 Node.js Neo4J 客户端(在 m3.xlarge AWS 实例上运行)来编写我的更改。
谢谢你。
您的跟踪看起来不错,只是几个线程忙于阅读内容。
它可能是垃圾收集导致的 CPU 峰值或其他在堆栈中不可见的东西。
你能分享你运行的(类型)语句吗?
对于您的查询:
如果您一直在使用通用 guid,您可能还想添加通用 :Node 标签
create index on :Node(guid);
create index on :Book(id);
'MERGE (u:Node{guid:{guid}})',
'SET u.name={name}, u:Book'
'MERGE (u:Node {guid:{guid}})',
'SET u.name={name}, u.sub_type={sub_type}, u:Home:Area'
// are you sure you mean :Book(id) not :Book(guid) ?
'MATCH ( e:Node {guid:{guid}} ), (m:Book{id:{id}})',
'MERGE (e)<-[r:MEMBER]-(m)',
'return r'