1. Use filter queries > Here a example of query, there are any incorrect o anything that can I > change? > http://xxx:8893/solr/candidate/select/?q=+(IdCandidateStatus:2)+(IdCobranded:3)+(IdLocation1:12))+(LastLoginDate:[2011-08-26T00:00:00Z > TO 2012-08-28T00:00:00Z])
What is the logic here? Are you AND-ing these boolean clauses? If yes, then I would change queries to http://xxx:8893/solr/candidate/select/?q=*:*&fq=IdCandidateStatus:2&fq=IdCobranded:3&fq=IdLocation1:12&fq=LastLoginDate:[2011-08-26T00:00:00Z TO 2012-08-28T00:00:00Z] I.e. move queries into fq (filter query) parameter. * it should be faster as it seems you don't need score here. Sort by id/date instead. * fq-s will be cached separately thus increasing cache hit rate. 2. Do not optimize your index > I have a master, and 6 slaves, they are been syncronized every 10 minutes. > And the index always is optimized. DO NOT optimize your index! (unless you re-create the whole index completely every 10 mins). It basically kills the idea of replication (after every optimize command slaves download the whole index).