Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Membre du Club

    Profil pro
    Inscrit en
    avril 2009
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 19
    Points : 41
    Points
    41

    Par défaut Perte de performance avec PgPool, une idée ?

    Bonjour à tous,

    J'espère ne pas me tromper de forum...

    Suite à une discussion sur le salon Solutions Linux avec des membres de postgresqlfr, j'ai demandé à mon hébergeur d'ajouter PgPool sur notre serveur dédié (postgresql 8.3 sur ubuntu). À les entendre, c'est particulièrement utile sur un site d'e-commerce.

    Il faut dire que l'outil semble des plus alléchants (http://pgpool.projects.postgresql.or...pgpool-fr.html).

    Hélas, dès que je bascule mon site du port 5432 (connexion habituelle) vers le 5433 (qu'utilise PgPool), l'outil de monitoring externe que j'utilise (Woozweb) m'annonce des performances en baisse, que ce soit sur le temps de réponse, que sur le temps de chargement de page.
    Sur une fiche produit, je n'ai pas de gain ou perte notable. Par contre, sur l'affichage d'un résultat de recherche (tj la même requête), je constate environ 20% de temps de réponse en plus et 40% de temps de chargement en plus !!!

    Est-ce que quelqu'un pourrait me donner une piste : mauvais paramétrage ? configuration inadaptée ? autre ?

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 421
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 421
    Points : 27 585
    Points
    27 585

    Par défaut

    pg_pool permet de gérer plus de connexions. Pas d'améliorer les performances de la BD...
    "...améliore les performances générales du système..."
    Le système n'a rien à voir avec PG, et le soulagement du système à même ressource se fait au détriment de PG

    Si vous voulez les deux il faudra rajouter pas mal de ressources à vos serveurs.... ou dupliquer (load balancing) !

    D'autre part trop de parallélisme tue le parallélisme... En effet, chaque thread à besoin d'attendre la fin du plus lambin pour passer à l'étape suivante.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  3. #3
    Expert Confirmé
    Profil pro
    Inscrit en
    octobre 2008
    Messages
    1 831
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : octobre 2008
    Messages : 1 831
    Points : 2 541
    Points
    2 541

    Par défaut

    Sur Ubuntu la configuration par défaut de PostgreSQL est telle que les connexions TCP sont en SSL par défaut, y compris sur localhost (mais pas en sockets du domaine Unix).
    Donc toutes les données qui transitent entre client et serveur sont encryptées, ce qui prend du temps CPU.

    Avec pgpool au milieu, dans le pire des cas elles sont cryptées deux fois, une fois entre le client et pgpool, une deuxième fois entre pgpool et postgres.
    Voir http://www.pgpool.net/mediawiki/inde...r_pgpool-II.3F

    Si le serveur web et le serveur postgresql sont sur la même machine, il vaut mieux utiliser des connexions en socket du domaine Unix. En admettant qu'on ne puisse pas (par ex. avec un serveur Windows ça n'est pas possible), utiliser localhost en TCP mais sans SSL.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •