Профилирование Lucene в Nutch - PullRequest
1 голос
/ 07 ноября 2010

Я пытаюсь профилировать Nutch с помощью VisualVM.Lucene - это часть ядра Nutch, отвечающая за генерацию URL-индексов и за поиск этих индексов по некоторому запросу.Я запускаю Nutch через Apache Tomcat, и я хотел бы определить, сколько времени Nutch тратит на различные вызовы функций (включая вызовы Lucene), но когда я пытаюсь профилировать с помощью VisualVM, я получаю кучу данных профилирования о Tomcat, а не Nutch или Lucene,Что я тут не так делаю?

1 Ответ

0 голосов
/ 15 ноября 2010

У меня был такой же опыт, когда я пытался определить время Lucene внутри звонков Tomcat. Что вам нужно сделать, это:

  1. Использовать VisualVM 1.2.2.
  2. Выберите соответствующий процесс и нажмите «Профиль».
  3. Установите флажок «Настройки». Это должно открыть вкладку «Настройки процессора», с полями, которые вы можете заполнить.
  4. В разделе «Начать профилирование с классов:» укажите точку входа в свой код. (например, com.my.company.NutchUser)
  5. Снимите флажок «Профилировать новые исполняемые объекты».
  6. Выберите "Профиль только классов:" и под ним напишите: org.apache.lucene. * org.apache.nutch. *
  7. Нажмите кнопку «Профилирование процессора». Я верю, что если вы сделаете все это, а затем запустите свой процесс и сделаете случайные снимки, у вас все будет хорошо.

В качестве альтернативы, Этот парень предлагает делать выборку из стека вместо профилирования . Я никогда не делал этого, но это звучит интересно.

...