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

Windows Discussion :

Comment déployer un applicatif sur un serveur windows ?


Sujet :

Windows

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2002
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 9
    Points : 8
    Points
    8
    Par défaut Comment déployer un applicatif sur un serveur windows ?
    Bonjour,

    Je ne suis pas sûr de poster au bon endroit, si ce n'est pas le cas merci de me conseiller un endroit plus adéquat.

    Le contexte :

    J'ai un serveur windows 2003 R2 sur lequel je veux déployer un applicatif (programme C) qui servira pour calculer des images à afficher sur un site web.

    Exemple : un utilisateur du site charge une photo, l'applicatif calcule une image à partir de la photo, le site affiche le résultat.

    Actuellement, l'applicatif est compilé en un executable. L'executable est appelé à châque requête par une couche en PHP. Le PHP attend le retour de l'executable et va chercher l'image générée pour l'afficher sur le site web.

    En gros :

    J'ai un programme C, je veux le mettre sur un serveur pour qu'il soit utilisé par un site internet.

    Ma question :

    Je m'attend à avoir beaucoup de requêtes à partir su site web, je me demande quelle est la bonne méthode pour déployer l'applicatif. Que dois-je faire de mon programme C ? Un service windows ? un .exe ? des .dll ?

    Autour du problème :

    Ma question porte donc sur comment déployer un programme C sur un serveur. Je me pose en particulier la question de comment gérer la montée en charge. Y'a-t-il des façons particulière de gérer les ressources du système (par exemple pour mettre en attente ou rediriger les requêtes si la mémoire du système est remplie)


    Merci pour votre aide.

  2. #2
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Idéalement, j'en aurais fais un fastCGI, mais comme ton traitement coté serveur est fait en PHP, je ne sais pas si tu peux aisément l'intégrer.
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2002
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par nicolas.sitbon Voir le message
    Idéalement, j'en aurais fais un fastCGI, mais comme ton traitement coté serveur est fait en PHP, je ne sais pas si tu peux aisément l'intégrer.

    Merci pour ta réponse. Je me documente sur fastcgi et je vais voir ce que je peux en faire.

    D'ailleurs si du monde ici a des adresses vers des tutoriels ou autres points de départ intéressants : je suis preneur !

    Merci

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    En DLL, tu auras la même chose qu'avec ton exécutable, mais ce sera par contre chargé en mémoire de façon "permanente", ce qui te fera gagner le temps de chargement / déchargement de l'exécutable.

    Intégrer une DLL en PHP n'est pas difficile, le gros du problème sera surtout d'écrire une fonction de DLL correcte (juste renommer le "main" marche rarement...).
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  5. #5
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    En DLL, tu auras la même chose qu'avec ton exécutable, mais ce sera par contre chargé en mémoire de façon "permanente", ce qui te fera gagner le temps de chargement / déchargement de l'exécutable.
    idem en fastcgi.
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  6. #6
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Tout à fait... Juste qu'il me semble bien que convertir un exécutable en fastCGI + l'interfacer avec PHP sera moins rapide que d'en faire une DLL et de l'interfacer.

    Côté performances... Ça doit se valoir plus ou moins, ça reste du code natif quand même, tout dépend ensuite des "couches" à traverser.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2002
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Tout à fait... Juste qu'il me semble bien que convertir un exécutable en fastCGI + l'interfacer avec PHP sera moins rapide que d'en faire une DLL et de l'interfacer.

    Côté performances... Ça doit se valoir plus ou moins, ça reste du code natif quand même, tout dépend ensuite des "couches" à traverser.
    Salut et merci pour les commentaires.

    Pour l'interface entre PHP et la DLL il y'a un moyen préconisé ?

  8. #8
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Tu peux essayer avec SWIG par exemple, c'est pratique et facile d'utilisation.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  9. #9
    Futur Membre du Club
    Inscrit en
    Juin 2002
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Alors on va tester les deux approches (dll ou fastcgi), on verra laquelle nous apporte le plus de perfs.

    Concernant le FastCGI, j'ai compilé le Hello World de la page http://www.fastcgi.com/devkit/doc/fcgi-devel-kit.htm

    Mais alors pour le tester, je suis perdu. Je suis sous windows avec Apache d'installé via Xampp et je ne trouve pas comment activer et configurer fastcgi.

    Apparemment il faut compiler les sources de mod_fastcgi pour obtenir le module mod_fastcgi.so puis configurer apache. Mais je n'ai pas réussi à compiler les sources et je ne trouve pas de version binaries...

    Là je vois qu'il est peut-être conseillé de passer par mod_fcgid.so plutôt que le mod_fastcgi. Donc j'explore cette voie mais j'ai du mal avec le serveur Apache...

    Bref si vous avez quelques conseils ou des liens vers des tutos pas à pas pour débuter en fastCGI je suis preneur.

  10. #10
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par semheis Voir le message
    Alors on va tester les deux approches (dll ou fastcgi), on verra laquelle nous apporte le plus de perfs.

    Concernant le FastCGI, j'ai compilé le Hello World de la page http://www.fastcgi.com/devkit/doc/fcgi-devel-kit.htm

    Mais alors pour le tester, je suis perdu. Je suis sous windows avec Apache d'installé via Xampp et je ne trouve pas comment activer et configurer fastcgi.

    Apparemment il faut compiler les sources de mod_fastcgi pour obtenir le module mod_fastcgi.so puis configurer apache. Mais je n'ai pas réussi à compiler les sources et je ne trouve pas de version binaries...

    Là je vois qu'il est peut-être conseillé de passer par mod_fcgid.so plutôt que le mod_fastcgi. Donc j'explore cette voie mais j'ai du mal avec le serveur Apache...

    Bref si vous avez quelques conseils ou des liens vers des tutos pas à pas pour débuter en fastCGI je suis preneur.
    Sous Windows le plus simple est d'utiliser wampserver selon moi, qui il me semble, intègre par défaut mod_fastcgi.so.
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/01/2012, 14h07
  2. [SP-2007] Comment déployer un workflow sur un serveur qui n'a pas visual studio ?
    Par glucas59 dans le forum SharePoint
    Réponses: 3
    Dernier message: 20/07/2009, 13h45
  3. Réponses: 3
    Dernier message: 11/11/2008, 22h20
  4. Réponses: 6
    Dernier message: 29/08/2006, 09h18
  5. Réponses: 3
    Dernier message: 21/10/2005, 09h54

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