2012-12-11 31 views
1

我目前有一个Java应用程序,每天更新一个neo4j数据库。neo4j - 独立服务器还是为这种情况嵌入?

然后我有另一个应用程序,通过创建一个具有相同存储路径的嵌入式数据库,使用遍历来查询数据库。

我应该如何着手保持服务器运行,并在每次查询java应用程序运行时将查询指向正在运行的实例?我不确定如何在不每次创建嵌入式服务器实例的情况下执行此操作。

我可以保持我目前的做法,问题是每次用户发出查询请求时都需要加载数据库,而且这很昂贵。

谢谢!

回答

0

不仅价格昂贵,而且如果我正确理解了您的应用程序概念,则可能存在潜在的锁存储错误。

如果您的更新应用程序正在数据库中执行某些操作,并且因此嵌入式数据库的实例正在运行,并且同时您的其他应用程序正试图使嵌入式数据库的实例执行查询, '碰到一家锁店。

我不知道你是否采取了任何预防措施来防止这种情况发生,或者如果你刚刚运气好以至于这些行为没有同时发生,但我会研究它。

+0

我有一个tomcat上下文变量,其中包含索引到数据库。我正试图找出处理更新的最佳方法。我正在考虑在更新运行时简单地关闭应用程序进行维护,创建一个新的数据库,然后删除旧的并替换为新的,然后再次打开应用程序。创建一个全新的更新数据库比通过每个节点检查更改更容易。 – user1277546