Configuration recommandée
Description |
Emplacement |
Propriété de configuration |
Valeur par défaut/minimale |
Valeur recommandée |
---|---|---|---|---|
Nombre maximal de connexions à la base de données dans le pool de connexion Quartz |
Fichier de configuration de Talend Administration Center |
"WEB-INF/classes/quartz.properties" : org.quartz.dataSource.QRTZ_DS.maxConnections |
30 |
org.quartz.threadPool.threadCount + 3 |
Nombre maximal de Jobs simultanés gérés par l'ordonnanceur (Scheduler) |
Fichier de configuration de Talend Administration Center |
"WEB-INF/classes/quartz.properties" : org.quartz.threadPool.threadCount |
30 |
MAX_CONCURRENT_TASK_EXECUTIONS + MAX_CONCURRENT_PLAN_EXECUTIONS |
Nombre maximal de connexions à la base de données de Talend Administration Center (excepté Quartz) |
Fichier de configuration de Talend Administration Center |
"WEB-INF/classes/configuration.properties" : hibernate.c3p0.max_size |
32 |
MAX_CONCURRENT_TASK_EXECUTIONS + MAX_CONCURRENT_PLAN_EXECUTIONS + MAX_CONCURRENT_LOGGED_USERS |
Définit le délai entre chaque vérification de Jobs distants |
Table de la base de données de Talend Administration Center configuration |
scheduler.conf.taskStatusRefreshTime |
1 |
|
Définit la taille du pool de threads qui vérifie les dernières exécutions au démarrage |
Table de la base de données de Talend Administration Center configuration |
dashboard.conf.taskExecutionsHistory.threadPoolSize |
10 |
( MAX_CONCURRENT_TASK_EXECUTIONS + MAX_CONCURRENT_PLAN_EXECUTIONS ) / 25 |
Définit la taille du pool de threads qui vérifie toutes les tâches au démarrage |
Table de la base de données de Talend Administration Center configuration |
scheduler.conf.simultaneousThreadsForStatusRefresh |
5 |
MAX_CONCURRENT_TASK_EXECUTIONS / 50 |
Définit le nombre maximal de fichiers ouverts lors du traitement de la base de données |
Hôte du serveur de la base de données |
Nombre maximal de fichiers ouverts : Par exemple, sous Linux, paramétrez les propriétés de configuration de Mysql "open_files_limit" et assurez-vous que la limite du fichier système est supérieure ou égale à la formule à droite. |
(dépend du système d'exploitation) |
( MAX_CONCURRENT_TASK_EXECUTIONS + MAX_CONCURRENT_PLAN_EXECUTIONS + MAX_CONCURRENT_LOGGED_USERS ) x 3 |
Définit le nombre maximal de connexions autorisées à la base de données |
Serveur de la base de données |
Nombre maximal de connexions : Paramétrez les propriétés de configuration de Mysql, par exemple "max_connections = 10000". |
(dépend du vendeur de la base de données) |
(org.quartz.dataSource.QRTZ_DS.maxConnections + hibernate.c3p0.max_size) x 1.2 |
Définit le nombre maximal de connexions simultanées accepté par le JobServer |
Fichier de configuration du JobServer |
"conf/TalendJobServer.properties" : org.talend.remote.server.MultiSocketServer. MAX_CONCURRENT_CONNECTIONS |
1000 |
MAX_CONCURRENT_JOBS_EXECUTIONS x 2 |
Variable | Description |
---|---|
MAX_CONCURRENT_JOBS_EXECUTIONS |
Nombre maximal attendu de Jobs exécutés simultanément pour le JobServer |
MAX_CONCURRENT_LOGGED_USERS |
Nombre maximal attendu d'utilisateurs connectés (Talend Administration Center + Studio) simultanément pour Talend Administration Center |
MAX_CONCURRENT_PLAN_EXECUTIONS |
Nombre maximal attendu d'exécutions simultanées de plans pour Talend Administration Center |
MAX_CONCURRENT_TASK_EXECUTIONS |
Nombre maximal attendu d'exécutions simultanées de tâches pour Talend Administration Center |
Si les propriétés ne sont pas configurées correctement, cela peut conduire à des problèmes de performances.
Les propriétés suivantes ont une grande influence sur les performances et la consommation de mémoire. Par défaut, elles sont :
- hibernate.c3p0.max_size=32
- org.quartz.threadPool.threadCount = 30.
- org.quartz.dataSource.QRTZ_DS.maxConnections = 30
Les valeurs par défaut fonctionnent si vous avez moins de 10 tâches qui s'exécutent en même temps.
Si vous avez plus de tâches, vous pouvez trouver le nombre org.quartz.threadPool.threadCount optimal en utilisant la formule :
org.quartz.threadPool.threadCount = 3 x la quantité maximale de Jobs s'exécutant au même moment
Vous n'avez pas besoin de nombreux threads redondants, car chaque thread consomme de la mémoire.
Le nombre de connexions dépend de la rapidité avec laquelle Talend Administration Center interagit avec le serveur de la base de données et du nombre de Jobs s'exécutant en même temps.
Le nombre total de connexions à la base de données = org.quartz.threadPool.threadCount + hibernate.c3p0.max_size
Le nombre total de connexions aux bases de données ne peut dépasser le nombre configuré sur le serveur, par exemple 150 dans MySQL. Le nombre optimal peut également être calculé via la formule :
org.quartz.dataSource.QRTZ_DS.maxConnections = 3 x la quantité maximale de Jobs s'exécutant au même moment
hibernate.c3p0.max_size= 3 x la quantité maximale de Jobs s'exécutant au même moment
Dans certains cas, si la connexion à la base de données n'a aucune latence, vous pouvez même utiliser la formule suivante :
org.quartz.dataSource.QRTZ_DS.maxConnections = 2 x la quantité maximale de Jobs s'exécutant au même moment
hibernate.c3p0.max_size= 2 x la quantité maximale de Jobs s'exécutant au même moment