Skip to content

mOuLiNeX/spark-threads

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

spark-threads

Pré-requis : Docker + Docker-compose + JMeter + jmeter-plugins (https://jmeter-plugins.org/)

Lancement du serveur : = 1 serveur spark + 1 Postgres

docker-compose up

La gestion de conf applicative et serveur se fait par des variables d'environement sur le docker-compose.yml.

Dans le § environment du service httpServer, on peut définir les var d'env suivantes :

  • HTTP_POOL_CAPACITY : pour le pool de traitement des requêtes HTTP
  • SQL_POOL_CAPACITY : pour le pool JDBC (basé sur c3p0) vers PostgreSQL, 20 par défaut
  • WORKER_POOL_CAPACITY : utilisé si APP_STRATEGY=GLOBAL_POOL, GLOBAL_POOL_WITH_FALLBACK_ON_POOL_FULL ou GLOBAL_POOL_WITH_FALLBACK_ON_WAITING_QUEUE_SIZE (cf plus bas)
  • WORKER_POOL_MAX_WAIT : utilisé si APP_STRATEGY=GLOBAL_POOL_WITH_FALLBACK_ON_WAITING_QUEUE_SIZE (cf plus bas)
  • APP_STRATEGY : pour choisir la stratégie de traitement d'une requête :
    • SEQUENTIAL : traitement en séquentiel
    • FORKJOIN : pour chaque requête, le traitement déporté sur un autre thread via Fork-join
    • THREAD_PER_PROCESS : pour chaque requête, le traitement est déporté sur un autre thread dédié
    • POOL_PER_PROCESS : pour chaque requête, le traitement déporté sur un pool de 3 threads
    • GLOBAL_POOL : tous les traitements sont déportés dans un pool de thread global (de taille égale à la valeur WORKER_POOL_CAPACITY, 10 par défaut)
    • GLOBAL_POOL_WITH_FALLBACK_ON_POOL_FULL : tous les traitements sont déportés dans un pool de thread global (de taille égale à la valeur WORKER_POOL_CAPACITY, 8 par défaut) mais si le pool est plein alors on passe en traitement séquentiel
    • GLOBAL_POOL_WITH_FALLBACK_ON_WAITING_QUEUE_SIZE : tous les traitements sont déportés dans un pool de thread global (de taille égale à la valeur WORKER_POOL_CAPACITY, 8 par défaut) jusqu'à ce que la file d'attente du pool contiennt plus de WORKER_POOL_MAX_WAIT threads, 8 par défaut)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published