Я новичок в solr, и я тестирую нашу установку, чтобы увидеть, с чем мы можем справиться. Я использую Solrmeter, и моя проблема немного странная:
lsof -i
он все еще слушает, а процесс Java все еще работает).Как будто ему нужно время нарастить? Кроме того, я заметил (независимо от разгона), что моя установка не может обрабатывать 12000 об / мин. Реакция на скорости 12 км / мин такая же, как если бы я бежал со скоростью 8 км / мин без увеличения. Следует отметить, что только сегмент, на который указывает solrmeter, перестает отвечать. Другой осколок без происшествий гудит.
Настройка (все в AWS):
Подавляющее большинство моей конфигурации solr / tomcat7 по умолчанию взяты из примера ubuntu packages / solr. Вот конфиги и конец файла catalina.out: https://gist.github.com/anonymous/ef8fa79ecc1673d11bc0
Я перенаправил консоль solrmeter (stderr и stdout) в файл. Это большой журнал (67Мб): https://docs.google.com/file/d/0BwPYmFCfmBYsU1hDWjlkUGdGTlU/edit?usp=sharing
Мой главный вопрос состоит из двух частей:
Когда tomcat заморожен, вы можете запускать 2-3 дампа потоков с интервалом 2-3 минуты. Вы можете проанализировать их и выяснить, что делает кот.
Ты можешь использовать jvisualvm
который поставляется с JDK, чтобы увидеть, не слишком ли много использования кучи, а также для получения дампов потоков.
Решением этой проблемы стал maxThreads на коннекторе. Увеличение этого числа до гораздо большего числа (10000), чем значение по умолчанию (200), позволило Solr (и Tomcat) намного лучше справляться с «мгновенной» нагрузкой.