On 2/4/11 5:48 PM, Tommaso Teofili wrote:
Regarding the embedded Solr server I think it can be worth to have this
option also for non testing scenarios as it avoid a lot of network overhead
so one could take advantage of it if the two instances (Solr and UIMA) are
on the same machine.
I do not agree, when to Solr server process is running on the same machine
the overhead to communicate with that process via network sockets is
negligible.
In case the user changes his mind, it is really easy to relocate the
Solr server to a new
machine with just changing the URL in the descriptor or the DNS entry.
There are even more advantages the processing pipeline can be
updated/changed
without taking down the Solr server which might serve some other systems.
And the Solr developers also suggest not to embed Solr if not really
necessary.
"The simplest, safest, way to use Solr is via Solr's standard HTTP
interfaces. Embedding Solr
is less flexible, harder to support, not as well tested, and should be
reserved for special circumstances."
(http://wiki.apache.org/solr/EmbeddedSolr)
In our case it has also the disadvantage that Solrcas is harder to use
because it is not clear that all
the Solr and Lucene dependencies are not required.
In the end I think it is fine for testing, and if some one really has
"special circumstances" he can
invest a few minutes and overwrite the createServer method. Having all
these dependencies makes it
inconvenient to use for the suggested and preferred use case.
Jörn