neo4j文档here
说非托管扩展可能很危险,但没有解释如何。任何解释它如何危险的例子或案例都将非常感激。
答案 0 :(得分:2)
正如您所猜测的那样,提示位于以下名称: unmanaged 。
非托管扩展功能非常强大,允许您部署任意代码,例如非常糟糕的代码(列表 不 详尽无遗) :
System.exit
PROFILE
可能有助于Cypher的故障排除)关于最后一点的简单例子:
// do not do this at home
String foo = "";
for (int i = 0; i < 1000000; i++) {
foo += String.valueOf(i);
}
这当然既非常天真又可能。同样,您可以部署任意代码,并最终导致Neo4j实例的堆被污染,因为其中一个活动的非托管扩展中定义了低效的代码。
实际上,非托管扩展会直接影响您的Neo4j实例,因为它们共享相同的服务器和环境。这就是为什么你在使用这样一个功能时必须小心(谨慎,我的意思是:监视器)。