2015-11-20 3 views
1

Есть ли способ проверить, почему сервер (выделенный neo4j) имеет высокую скорость процессора после некоторого времени выполнения запросов?neo4j high cpu и открытые транзакции

также прилагается монитор экран нормально? много открытых сделок там, которые только увеличивают enter image description here

enter image description here

+0

Вы можете включить медленное ведение журнала запросов и посмотреть, какой запрос занимает так много времени. http://neo4j.com/docs/stable/configuration-settings.html#config_dbms.querylog.threshold Вы также можете взять threaddump с kill -3 или jstack

ответ

1

Открыл должны продолжать расти. Это не то, сколько сейчас открыто, а всего лишь сумма, включая открытые и завершенные транзакции.

Тем не менее, «текущий» показывает 7, что означает, что у вас все еще есть 7 транзакций, что, вероятно, объясняет высокую загрузку процессора, в зависимости от того, что делают эти транзакции. Ожидается ли, что у вас будет 7 транзакций? Если так, то, вероятно, не о чем беспокоиться. Если нет, то вы можете захотеть понять, почему эти транзакции не закончились, когда вы ожидали их, и вы также можете настроить исполняющую карту, чтобы ограничить время, в течение которого каждый запрос может работать до того, как он будет убит.

+0

спасибо. в этом случае я ожидаю увидеть последний идентификатор TX Id, такой же, как и открытые транзакции. что меня смутило. что-нибудь делать/проверять о ЦП? –

+1

Количество открытых транзакций/количество совершенных транзакций сбрасываются каждый раз при перезапуске экземпляра. Последний совершенный идентификатор tx никогда не перезагружается, но, как я понимаю, это значение увеличивается только при транзакциях, которые записывают данные, а не только для чтения. Поэтому, если вы делаете намного больше чтения этого письма, я думаю, что ваши цифры имеют смысл. Что касается использования ЦП, я думаю, что это трудно сказать, не зная, какую обработку вы делаете, но я не думаю, что что-то не в порядке. –

+0

Есть ли какой-нибудь инструмент neo4j для профилирования активности процессора при выполнении запросов? –