Question
[closed]pb perf start-process redirection
- Gabriel
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 248
- Remerciements reçus 1
il y a 10 ans 10 mois #20533
par Gabriel
[closed]pb perf start-process redirection a été créé par Gabriel
Bonjour
J'ai des processus java a exécuter et je lance
[code:1]
Start-Process -WorkingDirectory $Working_Dir -File $Bin_Dir\$jar -ArgumentList $Args -RedirectStandardOutput $stdOutLog -RedirectStandardError $stdErrLog -wait -PassThru;
[/code:1]
le problème c'est qu'avec Java (et visiblement seulement java, sur le servir les meme processus lance des binaires c++ qui renvoie tout dans la consoleet on a pas ce pb) l'écriture de log prend plus de temps que si j'exécute la commande sous dos.
pas trop problématique si j'ai 200 lignes a faire, mais j'en ai quelques un qui vont générer 400.000 a 500.000 lignes de log (c'est voulu et nécessaire pour des raisons légales)
en cmd ca peut prendre 7-10min, en powershell 45min!
si on lance sans les RedirectStandardOutput/RedirectStandardError on tombe dans les 7-10min.
pour la plateforme on est en posh v4 sur 2008R2
je passe sur le fait que ca devrait être le java qui génére la log plutôt que de la sortir dans le stdin (le dev doit travailler dessus dans quelques mois
)
Un avis d'expert?
Message édité par: tonic8, à: 22/07/15 12:15<br><br>Message édité par: tonic8, à: 24/07/15 14:55
J'ai des processus java a exécuter et je lance
[code:1]
Start-Process -WorkingDirectory $Working_Dir -File $Bin_Dir\$jar -ArgumentList $Args -RedirectStandardOutput $stdOutLog -RedirectStandardError $stdErrLog -wait -PassThru;
[/code:1]
le problème c'est qu'avec Java (et visiblement seulement java, sur le servir les meme processus lance des binaires c++ qui renvoie tout dans la consoleet on a pas ce pb) l'écriture de log prend plus de temps que si j'exécute la commande sous dos.
pas trop problématique si j'ai 200 lignes a faire, mais j'en ai quelques un qui vont générer 400.000 a 500.000 lignes de log (c'est voulu et nécessaire pour des raisons légales)
en cmd ca peut prendre 7-10min, en powershell 45min!
si on lance sans les RedirectStandardOutput/RedirectStandardError on tombe dans les 7-10min.
pour la plateforme on est en posh v4 sur 2008R2
je passe sur le fait que ca devrait être le java qui génére la log plutôt que de la sortir dans le stdin (le dev doit travailler dessus dans quelques mois
Un avis d'expert?
Message édité par: tonic8, à: 22/07/15 12:15<br><br>Message édité par: tonic8, à: 24/07/15 14:55
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 10 ans 10 mois #20534
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:pb perf start-process redirection
Salut,
tonic8 écrit:
tonic8 écrit:
tonic8 écrit:
Il y a peut être une successione inutile d'ouverture/fermeture de fichier.
tonic8 écrit:
Sans connaitre ton environnment je dirais que si cela a été fait comme cela c'est que cela n'a pas été spécifié, et c'est déjà mieux que d'écrire directement sur la console
Si le code provient d'unix ou cible windows et Unix, c'est une approche correcte il me semble.
tonic8 écrit:
Sans code similaire pour des tests je ne vois pas ce qu'on peut t'apporter...
tonic8 écrit:
Tu as trouvé une solutionen cmd ca peut prendre 7-10min,
tonic8 écrit:
Bah là faut regarder le code source :-/en powershell 45min!
tonic8 écrit:
Dans ce cas, vérifie, au cas où, si la redirection des flux améliore les perf.pour la plateforme on est en posh v4 sur 2008R2
Il y a peut être une successione inutile d'ouverture/fermeture de fichier.
tonic8 écrit:
Tu veux dire dans stdout ?je passe sur le fait que ca devrait être le java qui génére la log plutôt que de la sortir dans le stdin
Sans connaitre ton environnment je dirais que si cela a été fait comme cela c'est que cela n'a pas été spécifié, et c'est déjà mieux que d'écrire directement sur la console
Si le code provient d'unix ou cible windows et Unix, c'est une approche correcte il me semble.
tonic8 écrit:
Tu nous l'as donné !Un avis d'expert?
Sans code similaire pour des tests je ne vois pas ce qu'on peut t'apporter...
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 248
- Remerciements reçus 1
il y a 10 ans 10 mois #20535
par Gabriel
Réponse de Gabriel sur le sujet Re:pb perf start-process redirection
Salut Laurent
je vois que tout le monde n'est pas en vacances
alors oui je ne peux pas mettre le code autre que la fonction d'appel (appli java interne). Ce qui n'aide pas pour le debug.
c'est pour le cas ou il y avait déjà eu des observations de timing sur de gros stdout
je vais essayer de rediriger directement la sortie de java sans utiliser les \"-redirect*\".
faut par contre que je joue avec des guillemets pour les argument du java mais ca je sais faire.
je vois que tout le monde n'est pas en vacances
alors oui je ne peux pas mettre le code autre que la fonction d'appel (appli java interne). Ce qui n'aide pas pour le debug.
c'est pour le cas ou il y avait déjà eu des observations de timing sur de gros stdout
je vais essayer de rediriger directement la sortie de java sans utiliser les \"-redirect*\".
faut par contre que je joue avec des guillemets pour les argument du java mais ca je sais faire.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.040 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [closed]pb perf start-process redirection