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

Autres langages pour le Web Discussion :

Site Web en C et questionnement CGI


Sujet :

Autres langages pour le Web

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Site Web en C et questionnement CGI
    Bonjour/bonsoir à tous,

    J'ai écumé le web à la recherche d'informations et je n'ai pas été déçu, au contraire : la multitude de ces informations, parfois obsolètes, parfois contradictoires, difficilement accessibles à un novice, m'ont petit à petit amené à venir solliciter l'aide de la communauté, tant il m'est devenu difficile d'éclaircir mes idées.

    Admettons si vous le voulez bien les Données/Contraintes suivantes de mon cas :
    • Il me faut développer un site web pour une grande part en C. Le choix du langage ne m'appartient pas.
    • Serveur Apache dernière version et un environnement de développement qui ne permet absolument pas de tests proches d'un mode production.
    • Le site doit quotidiennement faire face à un trafic important (plusieurs dizaines de milliers voire centaines de milliers d'utilisateurs ).
    • Je m'intéresse uniquement à la partie "logiciel" du problème, je ne m'occupe nullement de ce qui touche aux caractéristiques matérielles du serveur.


    Sachant cela, voilà où j'en suis dans mon cheminement :
    • Je pourrais envisager d'exécuter mon code C en tant que programme CGI. Problème : à chaque nouvelle requête égale un nouveau processus CGI lancé. Cela ne me semble pas être la solution optimale niveau logiciel pour affronter un gros trafic.
    • Heureusement, il existe FastGCI. Plus qu'un seul processus lancé pour gérer une multitude de requêtes et la possibilité de séparer les applications Web de celles propres au serveur HTTP. Problème : j'ai du mal à voir comment mettre cette solution en place. D'une part il existe une bibliothèque afin de créer des applications C optimisées pour FastCGI et d'autre part un module apache mais concrètement comment intéragissent ces deux parties, peut-être ai-je besoin de n'utiliser que l'une des deux solutions ? Où les deux doivent-elles s'articuler ensemble ? Ensuite et surtout, je "n'entends" personne parler de FastCGI comme d'une solution/alternative pour aider à optimiser la gestion d'un grand nombre de requêtes sur des sites d'envergures, du coup je finis par me demander, est-ce que c'est vraiment solide comme système, quelles sont ses performances, jusqu'à quelle limite peut-on le pousser ?
    • Enfin il y a les modules apache comme c'est le cas pour PHP, où apparemment l'interprétateur est directement chargé dans chaque processus traitant une requête. Cela à l'air d'être le fonctionnement par défaut pour beaucoup de sites et c'est donc gage d'une certaine efficacité. Problème : en quoi est-ce si différent du fonctionnement d'un programme CGI et pourquoi est-ce plus performant ? Ai-je mal compris quelque chose ?... Ensuite, je ne trouve rien de semblable pour le langage C, c'est-à-dire un module apache comme pour PHP/Perl etc mais pour le C (effectivement ça n'a aucun sens dans l'absolu, C est compilé, les deux autres interprétés, mais n'existe t-il rien qui s'en rapproche pour éviter de passer par du C en CGI qui risque de s'avérer gourmand en ressource serveur ?).


    Voilà, je pense tout vous avoir exposé. Merci par avance pour le temps que vous voudrez bien consacrer à la lecture de ce post.
    Cordialement,

    Real.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Solution potentielle
    Bonjour/bonsoir à toutes et à tous,

    Au final, la seule solution qui semblerait tenir la route d'après les différentes lectures/recherches que j'ai effectué (sauf avis contradictoire d'un connaisseur et valable seulement dans le cadre bien précis que j'ai décrit dans le précédent message), ce serait de coder directement un module en C pour le serveur Apache dont le rôle serait de s'occuper de notre site, tout comme dans de nombreuses versions PHP est par exemple intégré à Apache en tant que module et à priori non pas an tant qu'application CGI, c'est ce qui permet d'obtenir les meilleurs performances selon mes informations. Si celles-ci sont incomplètes et/ou erronées merci de corriger.
    D'autres pistes sont intéressantes à explorer :
    - FastCGI semble être une alternative solide aux modules de serveur, je ne connais pas ses performances exactes mais il semblerait que cette technologie puisse être utilisée pour des sites à fort trafic également.
    - L'interprétateur C et sa version pour le CGI Ch et https://www.softintegration.com/products/toolkit/cgi/

    Cordialement,
    Real.

Discussions similaires

  1. Créer un site web - en quel langage ?
    Par Thierry92 dans le forum Débuter
    Réponses: 90
    Dernier message: 13/04/2015, 15h42
  2. Avec quel éditeur concevez-vous vos site web ?
    Par Marc-xhtml dans le forum Outils
    Réponses: 263
    Dernier message: 06/05/2009, 15h43
  3. [Logiciel]Synchroniseur de site web
    Par magic corp. dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 12/05/2004, 13h05
  4. Réponses: 2
    Dernier message: 09/11/2003, 00h42
  5. site web sur le Haskell
    Par ab_sam dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 30/09/2003, 13h11

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