Пул OrientGraphFactory и пул сетевых подключений

Недавно я начал использовать новую 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 своего рода сетевым пулом, создавая сетевое соединение для каждого экземпляра базы данных. Так ли это? Или мне нужно дополнительно настроить пул сетевых подключений?

Спасибо!


person nightrise    schedule 16.11.2015    source источник


Ответы (1)


Сетевой пул использует этот параметр для настройки максимального количества подключений:

OGlobalConfiguration.CLIENT_CHANNEL_MAX_POOL.setValue( 500 );

По умолчанию 100.

person Lvca    schedule 17.11.2015