我们正在使用Bolt Driver for Java评估Neo4J企业版因果群集。
我们有3个节点Core Cluster。
我们看到的表现太低了。
我们正在创建1个节点,其中2个属性为10,00,000次。在跟踪时,我们获得300TPS(即每秒仅创建300个节点)。
操作系统是Linux,RHEL。
每个核心运行32GB。
我们估计只有1个节点可以接近50,000 TPS,但它只有300 TPS太低了。
我确信我们遗漏了一些大事。
此函数由64个线程的线程池调用10,00,000次。 代码段:
@Override
public void createNode() throws InterruptedException {
try (Session session = RTNeo4j.getInstance().getWriteDriver().session(AccessMode.WRITE)) {
try (final Transaction tx = session.beginTransaction()) {
try {
tx.run("CREATE (a:Person {name: {name}, id: {id}})",
parameters("name", "king", "id", System.currentTimeMillis()));
tx.success();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
感谢评估的快速帮助。
答案 0 :(得分:0)
每次在方法中创建会话时都不必创建。在方法外移动会话的创建:
Session session = RTNeo4j.getInstance().getWriteDriver().session(AccessMode.WRITE)