• [^] # Re: Mon positionnement

    Posté par . En réponse au journal Le libre et l'expérience utilisateur. Évalué à 2. Dernière modification le 13 février 2017 à 08:35.

    avec des variables d'environnement en plus pour essayer de contourner la limitation à un flux en entrée, bonjour le hack

    En quoi est-ce un hack ? Pas mal d’outils font ça. Regarde la page man de ton outil préféré, tu verras probablement une section Environment qui te décrira comment passer des variables d’état. Par exemple pour ansible :

    ANSIBLE_INVENTORY — Override the default ansible inventory file
    ANSIBLE_LIBRARY — Override the default ansible module library path
    ANSIBLE_CONFIG — Override the default ansible config file
    Many more are available for most options in ansible.cfg
    

    De plus d’autres solutions étaient disponibles, mais les concepteurs de CGI ont décidé d’utiliser les variables d’environnement : c’est probablement qu’ils pensaient que ce n’était pas un hack.

    c'est pas pour rien qu'on a fini par le remplacer par d'autres outils.

    On l’a pas remplacé pour la limitation des 3 flux, puisque même en FastCGI la logique est la même : un flux d’entrée pour la requête, un flux de sortie pour la réponse. On l’a remplacé pour éviter un fork() + execve() + rechargement complet du script (pas grave quand le script est un script perl de 30 lignes, plus gênant quand c’est une application Rails) à chaque requête. Et pouvoir gérer le nombre de workers (comme le fait php-fpm)

    stdio est toujours utilisé dans des application modernes quand c’est intéressant, c’est ce qu’utilise Chrome pour son protocole de Native Messaging par exemple.