Moniteur PostgreSQL

Versions supportées

NeoLoad supporte la plupart des versions de serveur de base de données PostgreSQL: 6.x, 7.x et 8.x.

Paramètres de connexion

Le moniteur PostgreSQL permet à l'utilisateur de surveiller les performances d'un serveur de base de données PostgreSQL. Les compteurs sont classés par catégories comme les connexions, les taux de lecture, la mémoire, l'utilisation des caches, ...

Le moniteur exécute des requêtes SQL sur la base pour obtenir les variables d'exécution. NeoLoad requiert un compte autorisé à se connecter à la base et à lire et flusher ces données pour effectuer la surveillance.

NeoLoad se connecte au serveur PostgreSQL en utilisant le protocole JDBC. Le pilote JDBC est inclus dans NeoLoad et ne nécessite aucune installation ou réglage particulier. Le port de connexion par défaut est 5432 (port standard JDBC).

Utilisation d'une connexion JDBC personnalisée. Une URL de connexion JDBC peut être définie dans le mode d'édition avancé. Cela permet notamment de donner des paramètres de connexion supplémentaires au pilote JDBC comme des timeouts, la gestion de clusters, ...

Exemple 7.4. URL JDBC PostgreSQL:

jdbc:postgresql://myserver:5432/mydatabase?loginTimeout=3000


Créer un moniteur PostgreSQL

Il est possible de créer un nouveau moniteur en suivant l'assistant de création d'une nouvelle machine monitorée ou bien à partir d'une machine monitorée déjà existante.

Compteurs disponibles

  • Connections. 

    • Current connections. Le nombre de connexions actuellement ouvertes.

    • Connections executing requests. Le nombre de connexions qui exécutent actuellement des requêtes.

    • Idle connections. Le nombre de connexions dormantes.

    • Max connections. Nombre maximum de connexions simultanées au serveur de bases de données.

    • % Used connections. Le pourcentage de connexions utilisées par rapport au nombre maximum de connexions.

  • Buffers. 

    • Shared buffers size. Taille des tampons partagés.

    • Disk cache size. Taille des tampons pour écrire les données en mémoire sur disque.

    • Sort buffer size. Taille des tampons de tri.

    • Work buffer size. Taille des tampons de traitement des requêtes.

    • Temp buffer size. Taille des tampons temporaires.

  • IO Requests. 

    • Blocks read. Nombre de blocs de données lus sur disque.

      Pour obtenir de bonnes performances cette valeur doit être la plus petite possible. En effet si la base de données effectue de trop nombreux accès disques, la conséquence est une dégradation des performances.

    • Index blocks read. Nombre de blocs d'index lus sur disque.

    • % Index blocks read. Pourcentage de blocs d'index lus sur disque.

    • Sequences blocks read. Nombre de bloc de séquences lus sur disque.

  • Cache. 

    • Blocks read. Nombre de blocs de données lus en cache.

    • Index blocks read. Nombre de blocs d'index lus en cache.

    • % Index blocks read. Pourcentage de blocs d'index lus en cache.

      Pout obtenir de bonnes performances cette valeur doit être la plus grande possible. En effet si pas assez d'index sont définis sur les tables, cela peut réduire les performances du serveur de bases de données.

    • Sequences blocks read. Nombre de bloc de séquences lus en cache.

  • Index. 

    • Index read. Nombre de parcours initiés sur un index.

    • Indexed rows read. Nombre de lignes de table lues par de simples parcours d'index

    • Indexed rows fetched. Nombre de lignes actives de table récupérées par de simples parcours d'index

  • Commands Rates. 

    • Rows read. Nombre de lignes lues.

    • Rows fetched. Nombre de lignes récupérées par toutes les requêtes.

    • Inserted rows. Nombre de lignes insérées.

    • Updated rows. Nombre de lignes modifiées.

    • Deleted rows. Nombre de lignes supprimées.

    • Commited transactions. Nombre de transactions validées.

      Pour éviter les pics de charges et donc une dégradation des performances, cette valeur doit être relativement stable. En effet si les applications ne valident pas assez souvent les transactions cela va générer une surcharge au niveau de la base de données.

    • Rolledack transactions. Nombre de transactions annulées.

    • % Rolledback transactions. Pourcentage de transactions annulées.

  • Locks. 

    • Locks waiting. Nombre de verrous en attente.

    • Locks held. Nombre de verrous actifs.

    • Process holding locks. Nombre de processus qui ont activé un ou plusieurs verrous.

  • Description. 

    • Server version. Version actuelle du serveur de base de données PostgreSQL.