【问题标题】:Cypher Queries work in local machine but does not work in server . Also query works good in embedded mode but not in Rest modeCypher 查询在本地机器上工作,但在服务器上不工作。查询在嵌入模式下也很好用,但在休息模式下不行
【发布时间】:2013-12-23 12:36:31
【问题描述】:

在本地机器 (Windows) 中运行良好的密码查询在 linux 实例中不起作用。密码查询在服务器/本地的嵌入式模式下也运行良好,但相同的查询在使用 Rest 模式时不起作用(返回 0 行)。本地和服务器之间的数据库大小差异很大,那么我们需要更改任何参数以适应数据库大小的这种差异吗?

我得到一个

com.sun.jersey.api.client.ClientHandlerException: java.net.SocketTimeoutException: 读取超时

示例查询是简单的查询,例如:ma​​tch n where n:LABEL_BRANDS return n

neo4j.properties 文件中的属性为:

neostore.nodestore.db.mapped_memory=25M
neostore.relationshipstore.db.mapped_memory=50M
neostore.propertystore.db.mapped_memory=90M
neostore.propertystore.db.strings.mapped_memory=130M
neostore.propertystore.db.arrays.mapped_memory=130M

Neo4J 版本我使用 2.0.0-RC1 。

另外,我在打开浏览器界面时经常收到“与 Neo4j 断开连接。请检查和弦是否拔出”错误。

在配置文件中设置一些属性会不会有错误,你能在这里找出错误吗?谢谢 。

【问题讨论】:

  • 升级你的服务器 Neo4j 2.0.0。如果问题仍然存在,请检查您的内存设置。为了进行分析,请从您的 messages.log 中获取最新的启动顺序,例如使用gist.github.com/sarmbruster/8001713 并上传到pastebin。
  • 我在 messages.log 中读到:总交换空间:0.00 B 可用交换空间:0.00 B。虽然我的本地机器不是这种情况,但您认为这是一个问题吗?我在启动 Neo4j 服务时看到的另一个错误是:WARN o.e.jetty.servlet.ServletHandler - /db/manage/server/monitor/fetch javax.ws.rs.WebApplicationException: javax.ws.rs.WebApplicationException: org.eclipse.jetty .io.EofException ....

标签: neo4j cypher


【解决方案1】:
  1. 升级到 Neo4j 2.0
  2. 您运行 Neo4j 服务器的机器有多大?
  3. 尝试根据磁盘上的存储文件大小配置合理数量的堆 (8-16GB) 和 RAM 的其余部分作为内存映射
  4. 您显示的查询是全局扫描,它将通过网络返回大型数据库上的大量数据。您想要运行的实际图形查询/用例是什么?
  5. 来自浏览器的错误消息还表明您的网络设置不稳定或您的服务器有问题。请按照 Stefan 的指示将您的 messages.log 上传到可访问的位置,并将链接添加到您的问题。

【讨论】:

  • 嗨,我将服务器升级到 Neo4j2.0 ,设置堆大小有助于某些查询成功,但不是全部。我现在使用 Cypher 查询创建了节点(之前是通过嵌入式 java),问题似乎已经解决,我能够在浏览器中成功运行查询以及使用 Rest 客户端。唯一的区别是我创建节点的方式 - Cypher 与嵌入式。
  • 好的,很酷。那么请接受答案并关闭这个问题:)
猜你喜欢
  • 1970-01-01
  • 2021-10-03
  • 2014-06-26
  • 2012-11-13
  • 2023-03-21
  • 1970-01-01
  • 2021-03-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多