Fredhopper exemple qserver de Indexer consommer trop de CPU Page


7

Aperçu avant chargement dans les 1,7 minutes, requête FH a 6,084 secondes et QServer consomme plus de 95% CPU. Ceci comme un problème de bloqueur, entraîne le ralentissement de l'ensemble du système. Y a-t-il un moyen d'identifier le problème et la raison pour laquelle il ne peut pas s'améliorer?

J'utilise l'indexeur pour les instances d'indexeur et qserver.

Les actions que j'ai prises et n'ont pas aidé sont;

  1. Augmentation de la mémoire qserver de l'indexeur de 1500 à 6000; instance3_qserver_memory = 6000

  2. We started the procedure of reindexing. Nous avons arrêté le serveur d'index, pris une sauvegarde de fredhopper avec; bin/capture-import <INSTANCE> path/to/capture.zip

    Nous avons copié tous les fichiers dans

    <BASE_DIRECTORY>\INDEXER>\data\xml\processed\batch; into <BASE_DIRECTORY>\<INDEXER>\data\fas-xml\<CATALOG01> .

    Nous avons couru le "reindexer" avec; bin/reindex indexer commande.

    Et également exécuter la commande suivante pour mettre à jour les serveurs live configurés avec l'index et la configuration en cours; bin\fresh-index-to-live indexer

  3. Nous avons observé que les articles sont indexés, et le nombre d'éléments en cours d'indexation est compté vers le bas. Lorsqu'il n'y a plus d'élément à indexer, j'ai redémarré le qserver de l'indexeur avec la commande suivante.

bin\deployment-agent-client --location localhost invoke <INDEXER> qserver stop bin\deployment-agent-client --location localhost invoke <INDEXER> qserver start

  1. Aucun aidé. Chaque fois que je vérifie les processus, l'instance de Dapp-name = qserver consomme trop de CPU jusqu'à 350%. J'ai observé la cuisine, les journaux d'instance de l'indexeur, les fichiers Fredhopper.log et qserver.log. Ce que je vois est la suivante (je doute qu'ils causent à quantité excessive de l'utilisation du processeur),

fichiers qserver.log "http-nio-10180-exec-39" démon prio = 10 tid = 0x0000xxxxxxx = 0x4e27 JNV runnable [0x00007fb8909eaxxx] java.lang.Thread.State: rUNNABLE Locked synchroniseurs ownable: - < 0x00000007e1280xxx> (travailleur java.util.concurrent.ThreadPoolExecutor $)

fredhopper.log 2016 -01-05 17: 58: 43,834 WARN [http-nio-10181- exec-32] SortFieldFilter.java:38 50180 Suppression du champ 'pubtitle' des champs de tri. Le tri sur les attributs non-live n'est pas supporté. Veuillez inclure ce champ dans les attributs de l'arbre afin de pouvoir le trier. || fredhopper @ hostName: fredhopper/data/installations/balises FAS/fas/fas-7.5.0.16/engine @ 107262 - url: http: // {url}

Puisqu'il indique que "Le tri sur les attributs non-live n'est pas supporté." , Je vais dans le Business manager et vérifie l'attribut pubtitle si c'est live ou non. Et je confirme que c'est en direct. Alors, pourquoi lance-t-il un tel SortFieldFilter WARN, aucune idée!

EDIT: L'exception que j'ai donnée dans qserver.log, est lancée des milliers de fois; l'utilisation excessive de l'unité centrale peut-elle être provoquée par ce problème?

There is an entry regarding the exception;

EDIT 2: J'ai également vérifié l'utilisation du processeur dans le SIT, et observé que son comportement en termes d'utilisation du processeur est similaire à celle de l'UAT. En d'autres termes, l'utilisation globale du processeur atteint 80% et celle de l'instance de qserver est de l'ordre de 250%. Donc, il y a un comportement similaire, mais SIT peut gérer les opérations sans problème. Au moins pour l'instant.

  0

Je suis confus. Voulez-vous dire qu'il continue à utiliser la puissance du processeur, même s'il n'y a pas de travail à faire? Ce serait très étrange. 10 juin. 162016-06-10 13:35:52

-1

Avez-vous analysé votre code pertinent et vérifié qu'il n'y a pas de fuite de mémoire?

Peut-être que vous pouvez essayer de répliquer l'environnement sur un serveur séparé - peut-être Dev et essayer de reproduire le scénario là. De plus, vous pouvez supprimer tous les points d'intégration possibles sur le serveur fredhopper et essayer de vérifier avec des requêtes simples.

J'espère que cela peut aider.

  0

Merci pour la réponse Pankaj. La réponse à votre question est oui. J'ai aussi les mêmes paramètres sur DEV et SIT. Aucun problème ne se produit. Ainsi, je doute que cela soit lié au code. Mais en UAT, j'ai ce genre de problème. Pouvez-vous me conduire à un tutoriel expliquant comment supprimer tous les points d'intégration possibles au serveur fredhopper? Je ne suis pas très sûr de ce que cela signifie réellement. 06 janv.. 162016-01-06 10:41:56

  0

Je voulais simplement dire, commenter tout votre code en faisant une connexion ou une requête à Fredhopper et ensuite essayer avec une requête très simple ... puis commence à égarer votre code un morceau par morceau pour identifier un code potentiellement problématique 06 janv.. 162016-01-06 11:14:54

  0

Je vois, mais la chose est que la même logique, et le bloc de codes sont disponibles dans d'autres environnements fonctionnant très bien. Ainsi, laissez-moi garder cette option comme le dernier. 06 janv.. 162016-01-06 11:16:56