2013-07-08 1 views
0

Я установил индексы SOLR на свой компьютер, и все работает нормально.Apache SOLR неустойчивая оперативная память

Я не испытываю проблемы с SOLR, но после профилирования процесса «start.jar» некоторое время я заметил, что потребление ОЗУ скачкообразно скапливается в пределах от 150 МБ до 400 Мбайт. И это только для документов 10K!

Так как в ответ я написал сценарий, который просто ждет, пока SOLR пройдет мимо моего лимита потребления RAM (на общем хостинге), и когда он это сделает, он убивает start.jar и перезапускает его.

Имеет ли это какое-либо неблагоприятное воздействие? И если да, то какие лучшие решения есть, кроме того, получить больше оперативной памяти или использовать SOLR на основе облачных вычислений (что также стоит денег)? Извините, если это звучит глупо, но мне просто нужно рабочее решение.

спасибо.

+1

Solr - голодная голова, никоим образом не вокруг. Однако см. Http://stackoverflow.com/questions/1546898/how-to-reduce-solr-memory-usage –

+0

Да, спасибо. Но мое решение просто убить SOLR и перезапустить его, когда использование памяти пройдет за пределы, имеет какие-либо неблагоприятные последствия, кроме того, что функция поиска не доступна на короткий промежуток времени. –

+0

Вы убиваете все тайники Solr, так что производительность сильно пострадает. Тем не менее, если вам не нужен высокий QPS, это может быть хорошо для вашего дела. –

ответ

0

Вы должны предоставить некоторые статистические данные Индекс:

Насколько велик ваш индекс (не из документации & размера в МБ/ГБ.)?
Сколько полей индексировано/сохранено?
Сколько памяти выделено JVM?
Вы оптимизируете/совершаете, очень часто/в режиме реального времени?
Что такое время запроса SOLR, которое вы видите в журналах?