问题标签 [neo4j-bolt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
207 浏览

python - Neo4j Bolt:self._pool 在 direct.py 中为 None

我有一个 pdf 文件,从中提取了两个语料库。返回关键字的函数在循环中被调用两次,每个语料库调用一次。对于第一个语料库,它可以很好地提取关键字。但是对于第二个语料库,我收到这样的错误:

这些是日志中的尾巴:

这是代码:

这是来自 neo4j/v1/direct.py 的代码:

似乎 self._pool 在第二次未初始化。有人可以帮我找出原因吗?

0 投票
0 回答
221 浏览

python-3.x - Python neo4j 螺栓驱动程序在上下文切换后失去连接

我有一个用 django 编写的后端,它使用 neo4j 螺栓驱动程序与 neo4j 图形数据库进行通信。

我使用单例来处理连接,并且螺栓驱动器关闭连接,每当我从最初建立连接的位置以外的其他位置访问它时(例如,我在视图中打开连接,在信号中访问它以及当我尝试保存在视图中连接丢失)。

我试图提取我提出的主要问题并将其分解为下面的一小段示例代码。

我将不胜感激对行为的任何解释,甚至更好的解决方案;)

实现细节:我有一个包装器对象“GraphMapper”,它封装了驱动程序的连接、会话和事务。并被设计为单例实例。事务在某个点(A,例如视图)建立,但我无法在此处完成事务。我需要从位置添加其他值(B,例如post-save信号)。但是,我不能将对“GraphMapper”A 的引用传递给 B。因此,我想出了上面解释的单例实现。我已确保单例在所有位置(在一个请求中)都是完全相同的实例。但是当我通过方法调用退出上下文(包、类或方法)并在下一个位置检索“GraphMapper”实例时,连接已关闭。我什至检查了对“GraphMapper”的引用计数及其连接,垃圾收集器不应该删除它。很少有人说连接没有关闭。但是写入图表会导致连接被拒绝错误。

PS:我知道有一些无用和不必要的代码,这仅用于说明目的,我想确保垃圾收集器没有杀死某些对象。

0 投票
1 回答
1690 浏览

neo4j - 无法通过浏览器连接到 neo4j,neo4j 浏览器中的螺栓端口已更改

到目前为止,我一直使用 neo4j 和以前的数据库。我现在创建了一个新数据库,并尝试打开 neo4j 浏览器,突然,我发现:

BoltConnectionError:未找到连接,您连接到 Neo4j 了吗?

看到我的数据库的日志,我看到:

018-12-20 12:56:17.381+0000 WARN 服务器线程指标不可用(缺少 neo4j.server.threads.jetty.all) 2018-12-20 12:56:17.385+0000 WARN 服务器线程指标不可用(缺少neo4j.server.threads.jetty.idle)

我还注意到我的 neo4j 浏览器的螺栓端口从 (localhost) 7687 更改为 11004。但是我可以使用 7687 端口在 Internet 浏览器上打开我的数据库。但是,我无法访问我最喜欢的密​​码脚本。因此,我更愿意通过 neo4j 浏览器连接到我的图形数据库。关于如何解决这个问题的任何想法?提前致谢 :)

0 投票
1 回答
246 浏览

neo4j - GraphQL 与 Bolt - Neo4j

我正在查看GRANDstack,现在我想知道 - 为什么有人会使用 GraphQL 而不是 bolt 协议来访问 neo4j?

0 投票
2 回答
73 浏览

c# - 在哪里/何时在 Neo4j IDriver 上调用 Dispose()?

我正在从 ac# 服务创建节点和关系,但我不确定何时是调用 dispose 的理想时间。我有三种创建 Neo4j 节点的方法和两种创建关系的方法。这些是紧接着被调用的。每个方法都会创建一个新的驱动程序。(最好不要在每种方法中创建新驱动程序?)

每个方法通常看起来像下面的代码摘录。

(在每个方法的末尾调用 Dispose() 都会出错,所以我不想把它放在那里。我只是展示我最初拥有的东西,并就最好的放置位置征求建议。)

0 投票
1 回答
55 浏览

spring-data-neo4j - Spring Data Neo4J - 管理与图形数据库的连接

我们有一个必须连接到多个图形数据库的应用程序。我们要连接的数据库可以在 HTTP 请求的标头中确定。

我已经尝试编写一个HandlerInterceptorAdapter并自动连接SessionFactory,然后Configuration为我想要连接的图形构建一个正确的 URI。然后我用sessionFactor.getDriver().configure(newConfiguration). 这适用于第一个呼叫,但随后的每个呼叫都失败并显示驱动程序已关闭的消息。

Spring Data Neo4J 可以做这样的事情吗?

0 投票
1 回答
425 浏览

python - (Python,Neo4j-driver) - 检查节点是否不存在时如何返回none

你好,我对 python 中的 neo4j(neo4j-driver) 很陌生。检查节点是否不存在时出现问题,我通过这些代码发送了一些与数据库中的节点不匹配的名称。

但它会出现这样的错误,因为它没有与 db 中的节点匹配。

那么我该如何解决这个问题,如果节点不存在则不返回。谢谢你

0 投票
1 回答
77 浏览

neo4j - `BoltStatementResultSummary` 中的 `result_available_after` 和 `result_consumed_after` 有什么区别?如何测量查询执行时间?

我尝试从这里的文档中理解,引用文档

result_available_after = None 服务器获得结果所需的时间。

result_consumed_after = None 服务器消耗结果所用的时间。

我仍然不明白实际的区别。如果我想扩展程序并找到查询的执行时间,我应该考虑哪一个。如果我再次运行相同的查询,为什么result_available_after会变成这样?0 ms是因为缓存吗?我尝试按照此处dbms.memory.pagecache.size=1M的建议更改设置,但没有奏效。如何仅测量查询的执行时间?

我正在使用 Neo4j 4.0 和 neo4j python 驱动程序进行查询。

0 投票
0 回答
320 浏览

kubernetes - 无法从 Kubernetes 集群中的其他服务连接到 Neo4j 集群

在我的 Kubernetes 集群中,我使用 Helm Chart 安装了 neo4j。使用了以下命令。

helm install --name neo4j-helm stable/neo4j --set acceptLicenseAgreement=yes --set imageTag=4.0.1

我有Python Flask 应用程序作为另一项服务。我正在使用Py2Neo使用以下代码连接到 neo4j。

但是,当我尝试进行 db 操作时,它说 Database graph.db 不可用。

在此处输入图像描述

我有 2 个只读副本和 3 个核心正在运行。我能够从我的 Python pod ping 到 Neo4j 服务。

在此处输入图像描述

在 Py2Neo 文档中,提到,

py2neo 不支持使用 Neo4j 因果集群(螺栓+路由)进行路由。对于此功能,请使用 Python 的官方 Neo4j 驱动程序

这可能是原因吗?

寻找这方面的一些指导。谢谢。

0 投票
2 回答
158 浏览

neo4j - 如何使用 ngrok 公开在 localhost 上运行的 neo4j 实例以供 google colab 使用?

我正在尝试通过 google colab 使用我的本地 neo4j 服务器。

我正在使用 ngrok 使用命令公开端口: ngrok http 7687。它给出了这样的东西: 恩格罗克

ngrok 工作正常。但是当尝试使用 colab 连接时,我收到以下错误:

colab_py2neo

不知何故,port 7687默认情况下正在使用,但对于这种特殊情况,我不需要任何端口。

任何帮助深表感谢。谢谢