yblatti / issue-test

0 stars 0 forks source link

FME Desktop : attendre la disposinibilité de FME avant execution [redmine:23629] #61

Open yblatti opened 5 years ago

yblatti commented 5 years ago

Original author : Yves Blatti

Suite à Dysfonctionnement #39 (rejeté)


FME Desktop limite le d'instances de fme.exe en exécution parallèle à 8. [1] De plus, les scripts/worksapces MFE qui utilisent un WorkspaceRunner lancent une fme.exe supplémentaire par WorkspaceRunner.

Afin d'éviter qu'une EXTRACTION plante si d'autres sont en cours et lance une erreur [2] il faut compter le nombre de fme.exe en cours d’exécution et attendre s'il n y en a pas assez de "libre" (8 - NombreDExecutablesEnCours >= LeNombrePourLeWorkspace).

Il faut:

Schéma de principe

!avoid_fme_limit.png!

Maquettes

Configuration : !fme_limit_exec.png!

Avant : Multiples traitements sur V<=1.1

!{width: 500px}error_8_exe.png!

Après : Multiples traitements sur V=>1.2

!{width: 500px}poc_fme_proxy_result.png!

Critères d’acceptation

|.ID|.Critère| |23629-1|Il est possible d'avoir >=9 traitements FME Desktops concurents, 8 fme.exe (au total) sont lancés sur le système au maximum| |23629-2|Un workspace FME n'est exécuté que s'il y a le nombre d’instances (configurée) de "libre"| |23629-3|Lorsqu'il n'y a pas assez de "libre", la tache attend (5 secondes) avant de revérifier la disposnibilité|


Notes: [1] : https://knowledge.safe.com/articles/139/how-many-concurrent-fme-processes-can-i-run-at-my.html [2] : @FME license system failure: The maximum number of concurrent FME instances specified in the license has been reached (-508)@. Voir #39 [3] : https://crunchify.com/how-to-get-a-list-of-current-open-processes-with-java/

Version : Prochain lot

Budget : 6180

yblatti commented 5 years ago

Original author : Rémi Bovard

Le délai de 2 secondes me semble un peu court (un script FME dure en moyenne plus que 2 secondes à mon avis), ça ne pose pas de problèmes que le check tourne trop ?

yblatti commented 5 years ago

Original author : Yves Blatti

Rémi Bovard a écrit :

Le délai de 2 secondes me semble un peu court (un script FME dure en moyenne plus que 2 secondes à mon avis), ça ne pose pas de problèmes que le check tourne trop ?

Ce n'est pas une opération couteuse, j'ai fait mon POC (#39#note-9) à 1 seconde sans charge notable. Mais si cela pose problème le développeur nous fera une proposition.