neo4j相同查询语句一次查询特慢再次查询比较快。

现象:

neo4j相同查询语句一次查询特慢再次查询比较快。

分析:

查询语句

bash 复制代码
//查询同名方法
  match(path:Method)
where id(path) in [244333030] and NOT path:Constructor

//是rpc的方法
 match(rpc_method:Method)<-[:DECLARES]-(rpc_method_cls:Class)
-[:ANNOTATED_BY]->(anno:Annotation)
-[:OF_TYPE]->(annoType:Type{fqn:'com.yueyue.wukong.rpc.annotation.RpcProvider'})
 where rpc_method.signature = path.signature


return * limit 10

profile查看真实的执行过程。explain 可以查看预估的计划任务

bash 复制代码
profile match(path:Method)
where id(path) in [244333030] and NOT path:Constructor

//是rpc的方法
 match(rpc_method:Method)<-[:DECLARES]-(rpc_method_cls:Class)
-[:ANNOTATED_BY]->(anno:Annotation)
-[:OF_TYPE]->(annoType:Type{fqn:'com.yueyue.wukong.rpc.annotation.RpcProvider'})
 where rpc_method.signature = path.signature


return * limit 10

过滤行数最多才16行,理论不应该慢。

升级配置,修改neo4j内存配置

分析服务器监控, cpu 磁盘压力比较高。

尝试升级服务器配置到64G

修改neo4j 内存配置

dbms.memory.heap.initial_size=2G

dbms.memory.heap.max_size=10G

dbms.memory.pagecache.size=30g 原来是2G

最终解决问题。

neo4j 内存大小评估方法参考文档:

https://neo4j.com/developer/kb/how-to-estimate-initial-memory-configuration/

相关推荐
林夕071 天前
Qt集成AI推理引擎:TensorFlow Lite与ONNX Runtime实战
人工智能·qt·neo4j
格鸰爱童话3 天前
springboot3.2使用neo4j
springboot·neo4j
Yeats_Liao6 天前
智能感知低功耗设计:MCU上的AI异常检测与能效优化
人工智能·单片机·物联网·neo4j
wjykp6 天前
1.neo4j琐碎知识
数据库·neo4j
一个数据大开发7 天前
企业知识工程的三条路线:Neo4j 知识中台、Agent + Action 与本体原生 Runtime
大数据·python·neo4j
伊甸37 天前
Neo4j 常用语法速查(Cypher)
java·数据库·neo4j
独隅9 天前
用 Anaconda 驯服 AI 开发流:从数据预处理到模型部署的全链路环境标准化实战指南
人工智能·neo4j
哥本哈士奇9 天前
Neo4j笔记(五):查询的处理流程
neo4j
百年੭ ᐕ)੭*⁾⁾17 天前
docker使用neo4j
docker·容器·neo4j
金斗潼关17 天前
neo4j使用说明
neo4j