Недавно я начал использовать новую OrientGraphFactory в OrientDB 2.1, и по большей части это было здорово.
Я использую scala и делаю это так:
lazy val orientFactory = new OrientGraphFactory(url, username, password).setupPool(minConnections, maxConnections)
Когда мне нужен новый экземпляр базы данных, я просто делаю:
val graph = orientFactory.getTx.asInstanceOf[TransactionalGraph]
Все это вроде бы работает хорошо, но у меня возникают некоторые проблемы при высокой нагрузке. Я подозреваю, что, возможно, мне нужно выполнить дополнительную работу с пулом сетевых подключений, как указано в документах OrientDB: http://orientdb.com/docs/2.1/Performance-Tuning.html
В документации предлагается настроить пул сетевых подключений следующим образом:
база данных = новый ODatabaseDocumentTx ("remote: localhost/demo"); database.setProperty("minPool", 2); database.setProperty("maxPool", 5);
база данных.открыть("админ", "админ");
Мне интересно, служит ли пул OrientGraphFactory своего рода сетевым пулом, создавая сетевое соединение для каждого экземпляра базы данных. Так ли это? Или мне нужно дополнительно настроить пул сетевых подключений?
Спасибо!