mardi 27 novembre 2012

Performance Tuning PeopleSoft


1. Introduction:

C'est un fait bien connu que 80% des problèmes de performance sont une conséquence directe de la mauvaise performance, tels que la configuration du serveur de ressources affirmation,. En supposant que vous avez réglé vos serveurs et de suivre les directives de votre serveur de base de données, serveur d'application, serveur Web et, la plupart de vos problèmes de performance peuvent être résolus par un ajustement de l'application PeopleSoft.

Cet article présente les méthodes et les techniques pour optimiser les performances des applications PeopleSoft. Les méthodologies qui sont abordés sont destinés à fournir des conseils utiles qui vous aideront à mieux optimiser vos applications PeopleSoft. Ces conseils se concentrer sur l'optimisation de plusieurs aspects différents au sein d'un environnement PeopleSoft, des serveurs aux indices. Vous trouverez certains de ces conseils vous fournir une amélioration significative de la performance tandis que d'autres peuvent ne pas s'appliquer à votre environnement.

2. Des performances du serveur:

En général, l'approche de la mise au point d'application commence par examiner la consommation de ressources. L'ensemble du système doit être surveillée pour analyser la consommation des ressources sur une base individuelle et composant dans son ensemble.
La clé de la mise au point serveurs dans un environnement PeopleSoft est de mettre en œuvre une méthodologie de saisir avec précision autant d'informations que possible sans utiliser les ressources critiques nécessaires pour servir les utilisateurs finaux.

Les outils traditionnels utilisés pour mesurer les utilisations impact sur le système mesuré et, finalement, l'expérience de l'utilisateur final. Commandes comme celles-ci fournissent des données instantanées, mais pas sans un coût associé. Ces outils peuvent consommer une quantité importante de ressources si les soins doivent être prises lors de leur exécution.

a) la taille df

b) iostat swapinfo

c) timex ipcs

d) top netstat

f) ps disponibilité

g) vmstat sar

h) swapinfo également un coup d'œil et gpm

Le but de l'utilisation de ces commandes natives est d'identifier, si et où, un goulot d'étranglement est sur le serveur. Le problème est dans la CPU, E / S ou la mémoire? Ces outils natifs de fournir des indicateurs, mais en même temps, pourrait biaiser les résultats en raison de la surcharge associée avec eux. En général, d'autres outils tiers sont nécessaires pour compléter l'analyse.

Le dernier obstacle qui se posent dans le réglage du serveur de synchronisation sur la prise de décisions lors de mettre à niveau le matériel lui-même. Pour ce faire, beaucoup plus d'informations doivent être collectées et stockées afin de comprendre si un pic historique dans l'utilisation des ressources était une aberration ponctuelle ou un bâtiment présence régulière au fil du temps. La recommandation est de regarder des tiers fournisseurs de solutions qui peuvent collecter des indicateurs clés de performance tout en minimisant les frais généraux sur le système. Les données recueillies peuvent ensuite être mis dans un référentiel pour l'analyse historique détaillée.

3. Performances du serveur Web:

La version de PeopleSoft pure architecture de l'Internet (TM) introduit de nouveaux composants à l'architecture PeopleSoft - le serveur Web et le serveur d'application. Le serveur d'application est l'endroit où la plupart des magasins lutter avec dimensionnement approprié. Les serveurs Web sont utilisés pour traiter les demandes des utilisateurs finaux à partir d'un navigateur Web afin d'éliminer les coûts administratifs liés aux logiciels de chargement (clients lourds) sur les ordinateurs individuels. L'avantage est une des économies importantes sur les coûts de déploiement de logiciels, la maintenance et les mises à niveau. Alors que le passage de la graisse pour les clients légers diminue la charge administrative, il augmente la nécessité d'assurer les serveurs web sont parfaitement adaptés car ils desservir un grand nombre de clients. L'exigence de ces serveurs Web pour obtenir des performances optimales est essentiel en raison de la mission essentielle-nature PeopleSoft joue dans l'entreprise d'aujourd'hui.

Recommandations visant à assurer de bonnes performances pour les serveurs Web:

o Veiller à la stratégie d'équilibrage de charge est saine

o Mettre en œuvre une solution de vérifier et de mettre en évidence les variations des volumes de trafic

o Surveiller de près les temps de réponse pour vérifier que la stratégie est d'optimiser les serveurs Web

o Mesurer et examiner les tendances historiques sur l'utilisation des ressources du serveur (voir la section serveur ci-dessus).

o Augmenter la taille du tas à 200, 250, 300 ou 380 Mo pour le script de logique Web de démarrage.

4. Gestion de la performance Tuxedo:

Tuxedo est plus middleware PeopleSoft utilise pour gérer les services Internet suivants serveur d'applications:

Processeur Component o - responsable de l'exécution de composants PeopleSoft - la logique métier de l'application de base PeopleSoft

o Processeur d'affaires Interlink - Responsable de la gestion des interactions avec des systèmes tiers

o Messaging Application Processor - Gère les messages dans un système PeopleSoft

Générateur o Interface utilisateur - Génère l'interface utilisateur basée sur la définition de composants ou de requête et génère la langue appropriée balisage (HTML, WML ou XML) et le langage de script (JavaScript WMLScript) basé sur le client accède à l'application

o Gestionnaire de sécurité - Authentification des utilisateurs finaux et gère leurs privilèges d'accès au système

processeur de requêtes o - Exécute des requêtes à l'aide de l'outil PeopleSoft Query

o Application Engine - Exécute des processus de PeopleSoft Application Engine

o Process Scheduler - Exécute des rapports et des processus par lots et enregistre les rapports dans le registre du contenu du Portail

o Responsable SQL Access - Gère toutes les interactions avec le relationnel SQL SGBD via
Cette Tuxedo niveau intermédiaire est une autre composante essentielle et influente de la performance. Similaire au serveur web, ce qui est nécessaire, c'est une façon de voir dans la «boîte noire» pour mieux comprendre quelques-uns des indicateurs clés de performance.

Certains des indicateurs de performance pour capturer lors de l'analyse de smoking sont les suivants:

o Les volumes de transactions par domaine, serveur, et l'application

o Le temps de réponse pour chaque demande de l'utilisateur final

o services Tuxedo générer une mauvaise déclaration performant SQL

o Décomposer de temps Tuxedo par le temps de service et temps de file d'attente

o Identifier l'origine problème - est-il smoking ou la base de données?

o des comparaisons de temps de réponse pour le serveur Tuxedo multiple

Rapports a montré que, trop souvent, les entreprises jettent matériel à un problème de performance Tuxedo quand une solution plus efficace peut être aussi simple que d'ajouter un autre domaine sur le serveur existant (s). Cela est dû au fait que les solutions PeopleSoft et gestion Tuxedo manque qui fournissent des vues historiques du rendement.

5. Performances des applications:

Il est un fait reconnu que 80% des problèmes d'application et de base de données se trouvent dans le code de l'application. Mais, il ya d'autres éléments techniques à prendre en compte ce qui pourrait influer sur la performance des applications. Voici quelques éléments spécifiques pour se concentrer sur l'environnement lors de l'évaluation de base de données:

o Assurez-vous que la base de données est dimensionné et configuré correctement

o Assurez-vous que les environnements matériels et O / S sont correctement configurés

o Vérifiez que les niveaux de correctifs sont en cours

o Fixer les erreurs courantes de SQL

o Revoir la documentation des problèmes connus avec PeopleSoft fourni le code

o Assurez-vous de vérifier les correctifs disponibles à partir de PeopleSoft qui pourraient résoudre le problème

o Examen PeopleSoft suggéré paramètres du noyau

o Mettre en place le bon nombre de processus

o Revoir le serveur d'applications de blocage pour longues requêtes

o Veillez à ne pas sous-dimensionner le serveur d'applications version 8

Il est également recommandé de continuer à examiner ces éléments sur une base périodique.

6. Database Performance:

La performance d'une application dépend de nombreux facteurs. Nous allons commencer avec l'approche globale générale pour accorder des instructions SQL. Nous passerons ensuite à des domaines tels que les index, suivi des performances, des requêtes, la Tempdb (tempdb est souvent désigné comme simple "TEMP"), et, enfin, les serveurs et l'allocation de mémoire.

Pour comprendre l'effet de l'accord, il faut comparer le «temps dans Oracle» par «temps d'attente demande». Demande de délai d'attente est le temps d'une session est connecté à Oracle, mais ne pas émettre des instructions SQL. Oracle dans le temps indique la quantité de temps à résoudre une instruction SQL une fois qu'elle a été soumise à Oracle pour l'exécution. Si le temps dans Oracle n'est pas significativement plus petit que le temps d'attente de requête, puis mise au point d'application devraient être examinées. Demande de délai d'attente est presque toujours beaucoup plus grande que dans le temps Oracle, spécialement conçue pour les utilisateurs de la ligne, en raison de temps de réflexion.

Une exception à cette règle est pour un job batch qui se connecte à Oracle et présente des instructions SQL, puis traite les données retournées. Une plus grande proportion de la demande d'attendre pour Oracle pourrait indiquer une boucle dans l'application en dehors d'Oracle.

Cela devrait être identifiée et éliminée avant de poursuivre l'analyse de la performance.
La prochaine étape se concentre sur l'optimisation des instructions SQL qui utilisent le plus de ressources. Pour trouver la plupart des ressources consommant des instructions SQL, la méthode de collecte prévu peut être utilisé. La durée est un critère couramment utilisés pour localiser les déclarations offensives SQL. D'autres critères utiles comprennent les états d'attente suivante: verrou de ligne I / O,, verrou de table, piscine partagée, tampon, segment d'annulation, redo-log buffer, verrouillage interne, connectez-interrupteur et claire, en arrière-plan, CPU, mémoire et E / O. Pour chaque énoncé SQL offensive, le plan d'exécution et les statistiques de base de données sont analysées. Les statistiques suivantes sont importantes: table et la sélectivité colonne, le facteur de regroupement d'index et les paramètres de stockage. Tout d'abord, toutes les jointures de la requête SQL sont pris en considération. Pour chaque jointure, l'ordre des tables est analysée. Il est d'une importance capitale d'avoir la condition la plus sélective du filtre pour la table de conduire. Puis, le type de la jointure est considérée. Si la jointure
Représente une boucle imbriquée, le forçant dans une jointure de hachage peut être avantageux dans certaines conditions.

La phase d'analyse se traduit généralement par des propositions de modification de plusieurs, qui sont appliquées et testées dans l'ordre. Les mesures correctives comprennent des changements d'objets de base de données SQL et les changements. Les changements typiques d'objets de base sont les suivants: changement d'indice, reconstruction d'index et une réorganisation de table.

Les changements typiques SQL sont les suivants: remplacement de sous-requête avec une jointure, division d'un SQL dans SQLs multiples, et en insérant des notes Oracle pour diriger l'Optimiseur au plan d'exécution à droite.

7. Index:

Le paramétrage d'index est un autre facteur important dans l'amélioration de la performance dans un environnement PeopleSoft. Indice de maintenance est essentielle pour maintenir la performance bonne base de données. Les statistiques sur la distribution des données sont conservées dans chaque index. Ces statistiques sont utilisées par l'optimiseur pour décider, le cas échéant, les index à utiliser. Les statistiques doivent également être maintenu afin que l'optimiseur peut continuer à prendre de bonnes décisions. Ainsi, les procédures devraient être mis en place pour mettre à jour les statistiques aussi souvent que possible.

Gardez à l'esprit que les objets qui ne changent pas, n'ont pas besoin d'avoir leurs statistiques créé à nouveau. Si l'objet n'a pas changé, les stats seront les mêmes. Dans ce cas, recréer les mêmes statistiques plus encore sera un gaspillage de ressources.

Depuis PeopleSoft utilise beaucoup de tables temporaires qui sont chargés, puis supprimées, mais pas abandonné, il est utile de créer les statistiques lorsque ces tables sont pleines de données. Si les statistiques sont créées lorsque la table est vide, les stats refléter ce fait. L'Optimiseur de ne pas disposer d'informations correctes quand il choisit un chemin d'accès.

Périodiquement, les index doivent être reconstruits à la fragmentation des index du compteur. Un script de création d'index peut être créé via PeopleTools à baisser et reconstruire les index. Cette procédure permettra d'éliminer l'espace perdu index sur des blocs qui sont créés à la suite des suppressions logiques Oracle. Cela n'est nécessaire que sur les tables qui sont souvent modifiés (insertions, mises à jour ou suppressions).

Indice de schéma est également important de regarder. Les index d'une installation standard PeopleSoft peuvent ne pas être les plus efficaces pour toutes les installations. Examiner de près les données Patron, la distribution et modifier les index en conséquence. Par exemple, l'index sur PS_VOUCHER (BUSINESS_UNIT, VOUCHER_ID) pourrait être remplacé par (VOUCHER_ID, BUSINESS_UNIT) pour une mise en œuvre avec seulement quelques unités d'affaires. Utilisez Options de requête isqlw (Montrer plan de requête et Afficher les statistiques d'E / S) pour déterminer l'efficacité de nouveaux indices. Attention cependant à tester en profondeur le régime de nouvel indice pour trouver toutes ses ramifications.

8. Requêtes:

C'est une bonne idée d'examiner les requêtes pour tenter de régler un problème qui affecte la demande. Analyseur de requêtes peut être utilisé pour voir les plans de l'optimiseur de requêtes SQL lents. Choisissez "Query / Affichage Plan" pour afficher une représentation graphique d'un plan de requête. Sinon, par l'émission d'un «ensemble showplan_text on" et exécutant l'instruction obtiendrez une représentation textuelle du plan, montrant les indices utilisés, l'ordre dans lequel les tables ont été utilisés, etc

Lors de l'examen des requêtes, des tables de travail créées par seconde devrait également être abordée. Si un grand nombre de tables de travail sont créés étant par seconde (des centaines par seconde), cela signifie qu'une grande quantité de tri est en cours. Cela peut ne pas être un grave problème, surtout si elle ne correspond pas à une grande quantité d'E / S.
Toutefois, la performance pourrait être améliorée en optimisant les requêtes et les index impliqués dans les sortes et, idéalement, cela permettra d'éliminer un tri.

Recommandations visant à assurer de bonnes performances pour les serveurs de base de données:

- Évitez d'utiliser des opérateurs booléens>, =,...

Aucun commentaire:

Enregistrer un commentaire