IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Interaction processus serveur


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 42
    Points
    42
    Par défaut Interaction processus serveur
    Bonsoir à tous,

    j'ai quelques questions concernant les fonctionnalités qu'offre PHP.
    En fait je veux développer un site qui permette de lancer des programmes installés sur le serveur. En effectuant mes recherches, j'ai vu que PHP offrait pas mal de fonctions pour interagir avec des programmes.

    Ce que je voudrais faire aussi c'est permettre à l'utilisateur de réduire la priorité de son processus, le mettre en pause ou encore le stopper.
    Il faudrait également, pour une question de confort, n'autoriser un nouveau lancement de programme que si le serveur ne soit pas trop occupé. Il me faut donc vérifier le niveau de travail du CPU sur le serveur...

    Je me demandais si tout cela était réalisable avec PHP seul ou s'il fallait que je m'oriente vers un autre langage (peut être plus adapté pour des opérations bas niveau) et couplé ce langage avec PHP?

    Mon serveur est de type Linux.

    Voilà, j'espère avoir été assez clair et précis.
    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    PHP ne fait rien de tout ce que tu decris, par contre il peut lancer des scripts ou des programmes qui s'en chargent.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 42
    Points
    42
    Par défaut
    Merci pour ta réponse

    En fait j'ai lu qu'avec la fonction proc_open() , on peut obtenir toutes les informations disponibles sur le programme lancé avec la fonction proc_get_status() et en particulier le pid.

    Je me disais que c'était une bonne base pour pouvoir interagir avec le processus...

    En ce qui concerne l'utilisation du processeur, la commande top sous linux permet d'afficher plus ou moins l'information et comme en php on peut lancé des commandes, je me disais que ça aurait pu convenir mais je trouvais ça brouillon...

    Tu me conseillerai alors de construire un programme en C par exemple pour gérer ce que je veux faire?

    Merci pour tes conseils

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 42
    Points
    42
    Par défaut
    Bonjour à tous,

    je pense avoir trouvé pour permettre à l'utilisateur de réduire la priorité de son processus lancé :

    On lance l'execution du programme avec la fonction proc_open() . On peut alors obtenir toutes les informations disponibles sur le programe lancé avec la fonction proc_get_status() (notamment le pid du processus)

    J'aurai donc un truc du genre :

    $proc = proc_open($commande,$flux,$descripteur);
    $info = proc_get_status($proc);
    $pid = $info['$pid'];


    J'aurais alors à ce stade là l'identifiant du processus... et il "suffirait" d'associer au bouton pour réduire le processus la commande suivante :

    shell_exec('renice -10 $pid');

    Je ne sais pas ce que vous en pensez? Est-ce une bonne manière de faire?
    Cela ne pose-t-il pas des problèmes de sécurité?
    Ou alors devrais-je me tourner vers un autre langage de programmation? si oui lequel?

    Merci pour vos réponses

Discussions similaires

  1. Processus Serveur Net Remoting invincible
    Par Jango51 dans le forum C#
    Réponses: 2
    Dernier message: 04/11/2009, 13h52
  2. [DDE] Interactions client-serveur
    Par TheGzD dans le forum Visual C++
    Réponses: 0
    Dernier message: 15/01/2009, 13h52
  3. Réponses: 0
    Dernier message: 14/07/2008, 19h51
  4. Port libre pour mon processus serveur
    Par nonozor dans le forum Réseau
    Réponses: 9
    Dernier message: 29/06/2008, 20h12
  5. Réponses: 5
    Dernier message: 17/06/2008, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo