IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration PostgreSQL Discussion :

Aide pour configuration


Sujet :

Administration PostgreSQL

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Points : 171
    Points
    171
    Par défaut Aide pour configuration
    Bonjour,

    Voilà, nous sommes en cours de développement de web services java avec une base de données POSTGRESQL.

    pour info, nous sommes sur un serveur CentOs, et un postgres 8.4.

    Au niveau java, nous utilisons SPRING, JDBC et BONECP.

    Nous rencontrons un problème d'utilisation mémoire que je n'arrive pas à résoudre. Lorsque j'appelle un web service, les process postgres sur le serveur s'accumule, donc au bout d'un certain nombre de requête, le serveur sature.

    Voici la liste des process :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    postgres  3798  2.1  0.1 207832  6140 ?        S    12:22   0:00 /usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data
    postgres  3996  0.0  0.0 179244  1400 ?        Ss   12:22   0:00 postgres: logger process                          
    postgres  3999  0.0  0.0 207832  1664 ?        Ss   12:22   0:00 postgres: writer process                          
    postgres  4000  0.0  0.0 207832  1592 ?        Ss   12:22   0:00 postgres: wal writer process                      
    postgres  4001  0.0  0.0 207972  1984 ?        Ss   12:22   0:00 postgres: autovacuum launcher process             
    postgres  4002  0.0  0.0 179376  1640 ?        Ss   12:22   0:00 postgres: stats collector process                 
    postgres  5584  0.0  0.1 209144  5116 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35375) idle     
    postgres  5585  0.0  0.1 209052  4420 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35376) idle     
    postgres  5586  0.0  0.0 208916  3360 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35377) idle     
    postgres  5588  0.0  0.0 208916  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35378) idle     
    postgres  5589  0.0  0.0 208916  3352 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35379) idle     
    postgres  5592  0.0  0.0 208916  3360 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35380) idle     
    postgres  5593  0.0  0.0 208924  3368 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35381) idle     
    postgres  5594  0.0  0.0 208924  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35382) idle     
    postgres  5595  0.0  0.0 208924  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35383) idle     
    postgres  5596  0.0  0.0 208924  3364 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35384) idle
    et après lancement d'une nouvelle requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    postgres  3798  0.8  0.1 207832  6140 ?        S    12:22   0:00 /usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data
    postgres  3996  0.0  0.0 179244  1400 ?        Ss   12:22   0:00 postgres: logger process                          
    postgres  3999  0.0  0.0 207832  1728 ?        Ss   12:22   0:00 postgres: writer process                          
    postgres  4000  0.0  0.0 207832  1592 ?        Ss   12:22   0:00 postgres: wal writer process                      
    postgres  4001  0.0  0.0 207972  1984 ?        Ss   12:22   0:00 postgres: autovacuum launcher process             
    postgres  4002  0.0  0.0 179376  1640 ?        Ss   12:22   0:00 postgres: stats collector process                 
    postgres  5584  0.0  0.1 209144  5116 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35375) idle     
    postgres  5585  0.0  0.1 209052  4420 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35376) idle     
    postgres  5586  0.0  0.0 208916  3360 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35377) idle     
    postgres  5588  0.0  0.0 208916  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35378) idle     
    postgres  5589  0.0  0.0 208916  3352 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35379) idle     
    postgres  5592  0.0  0.0 208916  3360 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35380) idle     
    postgres  5593  0.0  0.0 208924  3368 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35381) idle     
    postgres  5594  0.0  0.0 208924  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35382) idle     
    postgres  5595  0.0  0.0 208924  3356 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35383) idle     
    postgres  5596  0.0  0.0 208924  3364 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(35384) idle     
    postgres  5982  0.0  0.1 209068  5180 ?        Ss   12:23   0:00 postgres: pguser postgres 109.0.63.65(41187) idle 
    postgres  7560  0.0  0.1 209144  5040 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38341) idle     
    postgres  7562  0.0  0.1 209052  4428 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38342) idle     
    postgres  7563  0.0  0.0 208916  3368 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38343) idle     
    postgres  7564  0.0  0.0 208916  3372 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38344) idle     
    postgres  7565  0.0  0.0 208916  3368 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38345) idle     
    postgres  7568  0.0  0.0 208924  3360 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38346) idle     
    postgres  7569  0.0  0.0 208924  3368 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38347) idle     
    postgres  7572  0.0  0.0 208924  3376 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38348) idle     
    postgres  7573  0.0  0.0 208928  3372 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38349) idle     
    postgres  7575  0.0  0.0 208928  3376 ?        Ss   12:23   0:00 postgres: pguser projet 127.0.0.1(38350) idle
    Est-ce un problème de configuration Postgres ?

    D'avance merci.

    Vince

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bonjour,

    A combien est votre paramètre max_connexion ?

    (Et sinon votre pooler de connexion ne fait pas réutiliser ces connexions à d'autre process ?)

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Points : 171
    Points
    171
    Par défaut
    le nombre de connexions maximum est à 100, il s'agit du paramétrage par défaut

    Si mes 100 connexions sont lancées, si j'appelle de nouveau mon web service, j'obtiens l'erreur "Trop de clients déjà connecté".

    Comment faire pour éviter que ces process restent actifs trop longtemps ?

    merci

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    La c'est plutot un probleme avec votre serveur d'application / pooler et pas vraiment postgresql.

    Si vos process côté pgsql ne sont pas tuer c'est que votre application les maintient actif

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Points : 171
    Points
    171
    Par défaut
    ok, donc je dois le gérer au niveau BONECP ?

    mon paramétrage actuel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
            <property name="driverClass" value="${jdbc.driverClass}"/>
            <property name="jdbcUrl" value="${jdbc.url}"/>
            <property name="username" value="${jdbc.username}"/>
            <property name="password" value="${jdbc.password}"/>
            <property name="idleConnectionTestPeriodInMinutes" value="240"/>
            <property name="idleMaxAgeInSeconds" value="60"/>
            <property name="maxConnectionsPerPartition" value="20"/>
            <property name="minConnectionsPerPartition" value="5"/>
            <property name="partitionCount" value="1"/>
            <property name="acquireIncrement" value="5"/>
     
        </bean>
    Vincent

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    j'y connais rien en boneCp par contre y a une doc : http://jolbox.com/index.html?page=ht...iguration.html

    D'apres votre config, vous ne devriez pas dépasser les 20 connexions si j'ai bien lu la doc.

    Vous arrivez a plus de 100 vu que pgsql gueule un moment donné.

    Je vous laisse chercher sur les forums appropriés
    +

  7. #7
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Points : 171
    Points
    171
    Par défaut
    merci de vos réponses, je clos ce post

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'aide pour configurer IPSEC
    Par axel119 dans le forum Sécurité
    Réponses: 0
    Dernier message: 11/06/2008, 23h31
  2. Besoin d'aide pour configuration
    Par lachauss35 dans le forum Apache
    Réponses: 1
    Dernier message: 24/05/2007, 17h52
  3. [Débutant]Aide pour Configuration ASP.NET
    Par Vlatiska dans le forum ASP.NET
    Réponses: 6
    Dernier message: 15/03/2007, 13h34
  4. Aide pour configurer un serveur samba
    Par rigel dans le forum Administration système
    Réponses: 2
    Dernier message: 01/10/2006, 03h29
  5. [Serveur] Besoin d'aide pour configuration
    Par rigel dans le forum Ordinateurs
    Réponses: 8
    Dernier message: 19/09/2006, 10h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo