2010-12-13 79 views
3

Hej,Requêtes simultanées dans Solr

Je déploie un serveur Solr contenant plus de 30m docs. À l'heure actuelle, je teste les performances de recherche et les résultats sont très dépendants du nombre de requêtes simultanées j'Execute:

1 requête simultanée: 2516ms

2 requêtes simultanées: 4250,4469 ms

3 simultanée requêtes: 5781, 6219, 6219 ms

4 requêtes simultanées: 6484, 7203, 7719, 7781 ms ...

Ponton threadpool est configuré par défaut:

Nouvelle class = "org.mortbay.thread.BoundedThreadPool"

Set name = "minThreads" 10

Set name = "lowThreads" 50

Set name = "10000" maxThreads

Je voudrais savoir s'il y a un facteur que je peux définir pour diminuer l'impact des demandes simultanées en temps de réponse.

Solrconfig est également configuré par défaut mais sans cache pour mesurer les cas les plus défavorables et mergeFactor = 5 (la recherche sera plus demandée que la mise à jour).

Merci à l'avance

+1

Il est difficile d'analyser ceci sans aucun détail sur la charge des ressources système (mémoire, processeur, disque) et des informations sur les requêtes que vous exécutez. Par exemple, "*: *" avec plusieurs facettes charger qu'une simple requête sans aucune facette. –

+0

Je pense que 2516ms est trop élevé si vous utilisez un matériel approprié. Essayez d'ajuster les caches (ne les éteignez pas) et utilisez de vraies requêtes (!!). Utilisez-vous des facettes? Utilisez-vous des newSearchers, des moteurs de recherche, etc.? – Karussell

Répondre

1

S'il vous plaît vérifier ce IBM Tutorial for Solr

j'ai eu une grande aide de cette situation.

J'espère que vous trouverez votre réponse. :-)

+1

le lien est mort – phunehehe

2

Pourquoi essayez-vous de le faire avec la mise en cache désactivée? Qu'est-ce que vous essayez de mesurer exactement?

Vous avez effectivement forcé Solr (Lucene) à effectuer toutes les recherches à partir du disque. Ce que vous mesurez réellement est la simultanéité de Java elle-même combinée avec votre OS et le débit du disque. Cela n'a rien à voir avec Jetty ou Solr.

Les caches sont votre ami. Vous devriez vraiment les utiliser dans n'importe quelle sorte de capacité de production. À mon avis, vous devriez mesurer votre débit en charge tout en faisant varier les caches pour voir quel est le compromis entre la taille du cache et le débit.