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

C++ Discussion :

Intégration d'applications C++ au sein d'une page Web : quelle technologie utiliser ?


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2014
    Messages : 103
    Par défaut Intégration d'applications C++ au sein d'une page Web : quelle technologie utiliser ?
    Bonjour à tous,

    Je désire créer un site Web pour présenter les résultats d'algorithmes C++ que je développe (problèmes d'optimisation de tournées, problèmes de coloration, problème du plus court chemin sur de grandes instances, etc). En fouillant sur le Net, j'ai découvert que la technologie CGI permettait d'exécuter une application C++ <i>via</i> un code HTML, l'application étant exécutée côté serveur.

    Cependant, avant de me lancer dans l'apprentissage de cette technologie, j'aimerais connaître son impact sur les performances de l'application C++. En effet, mes algorithmes requièrent toute la puissance du C++ (c'est pour cela que j'utilise ce langage) et j'ai cru comprendre, en m'informant au sujet de CGI, que son utilisation aboutissait à une forte sollicitation du système d'exploitation.

    Voici donc mes questions :

    • Pensez-vous que l'utilisation de CGI soit appropriée à la présentation d'algorithmes gourmands en performances au sein d'un site Web ?
    • Si oui, quel <i>framework</i> devrais-je utiliser ? Dans l'idéal, j'aimerais pouvoir utiliser des librairies compatibles avec Visual C++ ou Qt, et je ne suis pas du tout linuxien.
    • Connaissez-vous d'autres technologies plus performantes que CGI ?


    Merci à toutes et à tous pour vos réponses et vos éclaircissements ;-)

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 301
    Par défaut
    Bonjour,

    Tu peux jeter un œil sur le cours en ligne suivant: "http://ad-wiki.informatik.uni-freiburg.de/teaching/EfficientRoutePlanningSS2012". C'est une université allemande mais le cours est en anglais très accessible. Le cours aborde progressivement les différentes techniques de calcul de plus court chemin (jusqu'aux dernières techniques utilisées par exemple par GoogleMaps). Il y a un TD sur la représentation dans une page web des tracés calculés côté serveur: la solution retenue est de passer par une requête jquery côté client et côté serveur c'est un petit serveur maison fait en C++ à l'aide de boost asio qui décode la requête du client et calcule le plus court chemin.
    Je me souviens plus si dans le cours ils utilisent plutôt l'api fournie par google mais perso j'avais utilisé leaflet et dans mon souvenir c'était pas trop compliqué.

    Pour tes questions sur CGI / fastCGI je pourrais pas t'aider, j'en ai jamais fait...

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par défaut
    Je pense aussi que l'approche décrite par Cédric est la bonne. Passer par CGI ou FastCGI voudrait dire que le code C++ traite la requête HTTP, mais concrètement ce n'est pas ce que tu veux.

  4. #4
    Membre très actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2014
    Messages : 103
    Par défaut
    Bonjour,

    Merci à tous les deux pour vos réponses. Le lien vers l'université de Freiburg est très intéressant. Je ne connaissais pas boost::asio et j'ai de très faibles compétences en programmation réseau. Je vais donc consulter le tutoriel traitant de ce sujet avant toute chose.

    Par contre, que voulez-vous dire par "le code C++ traite la requête HTML, ce n'est pas vraiment ce que tu veux" ? Au contraire, je pensais traiter des données utilisateur (par exemple, les coordonnées de points) à l'aide d'un formulaire HTML et donner ces informations en entrée de mon algorithme C++, dont les résultats seraient affiché par la page Web ?

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 489
    Par défaut
    Le problème majeur, c'est que le C++ n'est pas très adapté (demande beaucoup de travail) pour interpréter les requêtes HTTP et générer des réponses HTTP.
    L'approche habituelle est d'utiliser des technologies Web (php, ASP.NET, Node.js, ...) pour faire ce travail et de dédié le travail C++ au calcul intensif en communicant avec une API en rien Web (Dll, composants, modules du serveur Web, ...).

  6. #6
    Membre très actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2014
    Messages : 103
    Par défaut
    Citation Envoyé par bacelar Voir le message
    (...) et de dédié le travail C++ au calcul intensif en communicant avec une API en rien Web (Dll, composants, modules du serveur Web, ...).
    Bonjour Bacelar,

    Votre réponse m'intéresse aussi ! Pouvez-vous m'en dire plus sur la communication du C++ avec une de ces API ? De quoi s'agit-il au juste ? Avez-vous des exemples de telles API ?

    Merci beaucoup !

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/04/2015, 13h33
  2. L'affichage d'une photo au sein d'une page jsp
    Par debutantjak dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 10/05/2006, 17h11
  3. [VB ou C++] intégration d'une page web dans une application
    Par devmat dans le forum Windows Forms
    Réponses: 5
    Dernier message: 05/10/2005, 15h14
  4. application qui connecte sur une page web
    Par spoolz dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 14/04/2004, 09h47
  5. Réponses: 3
    Dernier message: 28/10/2003, 14h26

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