PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 07/07/2014 10:35:30

Kore
Membre

configuration pooling connexion pgPool-II

Bonjour,

Voilà je voudrais obtenir des précisions pour configurer les paramètres max_pool et num_init_children de pgPool-II?

Quand faut il faire varier le max_pool par rapport au num_init_children ou inversement? 

Quelle est la différence entre faire varier le nombre de pool par rapport au nombre de connexions gérées dans chaque pool?


Pouvez vous m'indiquer la bonne pratique pour 10000 connexions en consultation simultanées sachant qu'il s'agit d'un site web avec des requêtes SELECT assez simples?

Un seul pgPool + 1 backend bien gonflés en mémoire et en CPU suffisent il? Sachant qu'il s'agit d'une bdd de 10Go tout au plus.

Si oui, quelles seraient les valeurs à positionner pour max_pool et num_init_children dans le pgpool.conf et la valeur de max_connections dans le postgresql.conf du backend? Tout du moins de bonnes valeurs de départ?

Sinon, quelle est la bonne pratique pour ce type de cas? Plusieurs pgPool et/ou backend avec répartition de charge obligatoire?


J'espère avoir été assez clair dans mes demandes.

Cordialement

Hors ligne

#2 07/07/2014 10:43:37

Kore
Membre

Re : configuration pooling connexion pgPool-II

j'ai oublié de préciser.

Le couple [user, database] qui passera par pgPool-II sera toujours le même.

Cordialement.

Hors ligne

#3 07/07/2014 21:50:28

gleu
Administrateur

Re : configuration pooling connexion pgPool-II

On augmente num_init_children quand on veut pouvoir exécuter plus de requêtes en parallèle. On augmente max_pool quand on a un grand nombre de couple utilisateur/base.

Dix mille connexions simultanées ? il ne vous faut pas pgpool mais pgbouncer. Et j'espère que votre intention n'est pas d'avoir 10000 requêtes exécutées à un instant t.


Guillaume.

Hors ligne

#4 07/07/2014 21:52:12

gleu
Administrateur

Re : configuration pooling connexion pgPool-II

Si le couple utilisateur/base est toujours le même, mieux vaut laisser max_pool à 1 et augmenter plus ou moins fortement num_init_children.

Mais bon, la première question à se poser est la durée des sessions. Si les sessions peuvent être longues (ie, plusieurs minutes à beaucoup plus), dans ce cas, oubliez pgpool et utilisez pgbouncer en mode transaction (ou requête même si c'est plus difficile).


Guillaume.

Hors ligne

#5 10/07/2014 11:05:38

Kore
Membre

Re : configuration pooling connexion pgPool-II

Merci pour vos réponses.
Cordialement. smile

Hors ligne

Pied de page des forums