2016-07-22 158 views
1

我使用OrientDB 2.2.5作为多线程Java Web应用程序的后端,我尝试了许多不同的连接方法。每种方法似乎都有问题。OrientDB连接池

我基本上需要一些可以同时调用的东西来使用OrientDB数据库,无论是静态方法还是对象实例。

我试过各种方法,并有记录锁定或各种其他例外的问题。该文档显示了折旧连接池方法(ODatabaseDocumentPool),并且互联网上的各种其他来源显示了多种方式(ODatabaseDocumentTx,OPartitionedDatabasePool)。

请有人提供一个可重用的方法连接到实例(目前只是一个plocal),并发出一个基本的查询。还请包括任何连接清理逻辑(我认为这是导致我记录被锁定的问题,甚至在最后一次更新后几秒钟)。

任何帮助/指针将不胜感激。

回答

1

为了用最小为1的情况下,最多10个实例的可回收池工作:

OrientGraphFactory factory = new OrientGraphFactory("plocal:/temp/mydb").setupPool(1, 10); 

一旦工厂的配置,你可以得到图实例开始工作。 OrientGraphFactory有两种方法来检索事务性和非事务性实例:

OrientGraph txGraph = factory.getTx(); 

OrientGraphNoTx noTxGraph = factory.getNoTx(); 

希望它有帮助。

0

如果您使用文档API,OPartitionedDatabasePool是您选择的池。请注意,这是由OrientGraphFactory内部使用的池实施。