Ответ 1
Java Lucene и все его порты на других языках, включая Zend Lucene, являются библиотеками поиска.
Это означает, что для использования Zend Lucene вам необходимо обернуть его другим кодом (PHP), который будет интегрировать поиск с остальной частью вашего приложения. Код, как правило, должен управлять индексацией, поиском и, как правило, некоторой уборкой Lucene. Вы общаетесь с Zend Lucene, используя вызовы функций PHP.
Solr, OTOH, это поисковый сервер, построенный поверх Lucene. Это означает, что экземпляр Solr может работать как автономный сервер webapp внутри контейнера сервлетов (это могут быть Tomcat, Jetty или одна из нескольких других таких программ). Гораздо проще настроить сервер Solr, чем приложение Lucene. Вы можете много сделать с Solr без написания одной строки Java - просто путем настройки некоторых файлов конфигурации XML. Настройка сервера Solr может занять несколько минут. По умолчанию для связи с Solr используется HTTP-вызов.
Таким образом, для установки Zend Lucene требуется наличие PHP-сервера и правильная индексация и извлечение с использованием библиотеки PHP. Для установки Solr требуется запуск контейнера сервлетов Java и развертывание в нем военного файла.
Что касается производительности, Solr имеет множество кеширования Lucene и другие параметры, оптимизированные. Кроме того, я считаю, что Zend Lucene работает медленнее, чем Java Lucene, поэтому моя ставка заключается в том, что Solr будет быстрее, но это действительно зависит от конкретного приложения.