Sye*_*her 1 java solr apache-commons solrj
我需要知道EmbeddedSolrServer和CommonsHttpSolrServer之间的性能.
EmbeddedSolrServer:
File home = new File("C:\\workspace\\SolrWithMultipleCore\\solr");
File f = new File( home, "solr.xml" );
CoreContainer container = new CoreContainer();
container.load( "C:\\workspace\\SolrMultipleCore\\solr", f );
EmbeddedSolrServer server = new EmbeddedSolrServer( container,"core1");
EmbeddedSolrServer server1 = new EmbeddedSolrServer( container,"core2");
String query=params.getParams("q");
String query1=params.getParams("q1");
SolrQuery solrquery=new SolrQuery(query);
QueryResponse rsp1 = server.query(solrquery);
QueryResponse rsp2 = server1.query(solrquery);
Run Code Online (Sandbox Code Playgroud)
CommonsHttpSolrServer:
SolrServer httpServer = new CommonsHttpSolrServer(url);
QueryResponse rsp1=httpServer.query(q);
SolrServer httpServer1 = new CommonsHttpSolrServer(url1);
QueryResponse rsp2=httpServer1.query(q1);
Run Code Online (Sandbox Code Playgroud)
哪个是最好的EmbeddedSolrServer或CommonsHttpSolrServer?我所说的两个核心有不同的架构.我需要知道什么是MultiThreadedHttpConnectionManager.
嵌入式显然更快,因为它没有任何HTTP或序列化开销.这并不意味着你应该总是使用嵌入式.请参阅EmbeddedSolr wiki页面.
关于MultiThreadedHttpConnectionManager,CommonHttpSolrServer javadocs解释:
如果此客户端跨SolrServer实例重用,则客户端的连接管理器应为MultiThreadedHttpConnectionManager,否则多个线程将使用此SolrServer.