Hi, I wanted to know in detail on how it is http connections are handled in Solr.
1. From my code, I am using CloudSolrServer of solrj client library to get the connection. From one of my previous discussion in this forum, I understood that Solr uses Apache's HttpClient for connections and the default maxConnections per host is 32 and default max connections is 128. *CloudSolrServer cloudSolrServer = new CloudSolrServer(<zookeeper_quorum>);* *cloudSolrServer.connect();* My first question here is what does this maxConnectionsperHost and maxConnections imply? Are these the connections from solrj client to the Zookeeper quorum OR from solrj client to the solr nodes? 2. CloudSolrServer uses LBHttpSolrServer which does send requests in round robin fashion, i.e., first request to node1, 2nd request to node2 etc. If the answer to the above question is "from solrj client to the solr nodes", then does the http connection pool to the solr nodes from solrj client will be created for the first request to a particular solr node during round robin? 3. Consider in my solr cloud I have one collection with 8 shards spread on 4 solr nodes. My understanding is that solrj client will send a query to one the solr core ( eg:solr core1) residing in one of the solr node (eg: node1). The solr core1 is responsible for sending queries to all the 8 Solr cores of that collection. Once it gets the response from all the solr cores, it merges the data and returns to the client. In this process, how the http connections between one solr node and rest of solr nodes are handled. Does Solr maintains a connection pool here between Solr nodes? If so, when the connection pool is created between the Solr nodes? Thanks, Manohar