Configuration du pool de connexion

Request description

Bonjour,
Je reviens vers vous concernant cette question qui a avait été posée en novembre:

Nous sommes toujours en difficulté pour re-sizer notre pool de connexion.
Je repose la question, n’y a-t-il pas de paramètre côté Simplicité qui viendrait écraser ce qui est configuré dans le context Tomcat?

Merci par avance
cdt
----description of the request----

Steps to reproduce

This request concerns an up-to-date Simplicité instance
and these are the steps to reproduce it:

Technical information

Instance /health
---paste the content of your-instance.com/health---
Simplicité logs
---paste the content of the **relevant** server-side logs---
Browser logs
---paste content of the **relevant** browser-side logs---
Other relevant information

----E.g. type of deployment, browser vendor and version, etc.----

Bonjour,

Non, il n’y a toujours pas de paramètre spécifique, il faut générer vos images custom pour ce cas d’usage.

Le Dockerfile pour produire votre image custom pourrait ressembler à ceci:

FROM registry.simplicite.io/platform:5-latest
RUN /bin/bash -c 'sed -i "/..../..../d" /usr/local/tomcat/webapps/ROOT/META-INF/context.xml'

La définition du datasource est dans le fichier META-INF/context.xml de la webapp (dans nos images Docker la webapp se trouve dans /usr/local/tomcat/webapps/ROOT)

Vous pouvez tout à fait modifier/remplacer ce fichier (par construction d’une image custom ou montage d’un fichier) pour jouer sur la définition du datasource (du moment que vous conservez son nom JNDI : jdbc/simplicite).

Vous pouvez ainsi, par exemple, jouer sur les paramètres de dimensionnement de celui-ci, et peut être , si c’est pertinent dans votre cas, remplacer le gestionnaire de pool par un autre => typiquement celui qui est décrit dans cette doc Tomcat qui est visiblement plus “moderne” et plus finement configurable que celui par défaut sur Tomcat (celui qui est utilisé quand on ne précise pas explicitement l’attribut factory).

NB: il existe même d’autres gestionnaires tiers de pool de connexion à la base avec certainement leurs avantages et inconvénients, ex: HikariCP

Nous avons volontairement mis par défaut la configuration la plus basique possible, justement pour laisser la possibilité de faire des choses avancées si besoin.

1 Like

Bonjour,
Merci de ces retours que je vais transmettre à nos devops. On continue de travailler sur le sujet.

cdt,
Thierry

De notre on va expérimenter un peu de notre coté le “nouveau” gestionnaire de pool de Tomcat (org.apache.tomcat.jdbc.pool.DataSourceFactory), et si c’est concluant, et quand on aura le recul nécessaire, ça deviendra peut être le gestionnaire par défaut de notre datasource. En attendant il faut ajouter manuellement factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" si on veut s’en servir à la place du gestionnaire par défaut de Tomcat.

Mais de toute façon on ne mettra aucun attribut de configuration de “tuning” (ex: maxActive, maxIdle, …) car les valeurs par défaut sont à priori adaptées au cas général. Il reste toujours possible de les ajouter spécifiquement si besoin.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.