13-07-2020, 17:31:31
Alors, je suis un peu en mode dilemme :
J'aimerais posé des bases saines avec un serveur moderne : qui supporte nativement websocket et/ou http2.
Qu'est-ce que ce charabia ?
En rapide, le gros avantage c'est de faire de l'asynchrone (lancé des tâches dont on ne connait pas la durée) et de piloter le site via le serveur.
En gros, si on veut qu'une application de mail soit par exemple averti qu'un nouveau message est disponible sur de l'http 1, il faut faire un truc assez crado ou on met en place une boucle en javascript qui va interroger le serveur tous les x secondes pour savoir si il y a un nouveau message.
crado :
1. parce que c'est plus difficile à maintenir (code spaghetti)
2. ça sollicite plus le navigateur et le serveur pour rien
3. c'est pas du temps réel
Pour pallier à ces limitations, HTTP2 existe désormais et permet de faire du push : çàd que les clients se connectent à un serveur dans un premier temps.
Une fois connecté, le serveur peut leur transmettre des données soit de façon individuel (tel client a eu tel message sur sa boite mail) soit mutuel. (avertissement : la maitresse x sera absente le ...)
Tout ce prélude car ça permettra plein d'évolutions "sympas" à venir.
Ex :
- le professeur veut envoyer un message à tous les élèves
- on veut une barre de progression sur de l'installation/désinstallation.
etc.
Pour l'instant, je suis parti avec Flask qui n'est pas adapté. (toute évolution vers HTTP2 ressemble plutôt à de la bidouille)
Heureusement, j'ai testé la migration vers Quart (même api que Flask) et le saut était fait en quelques minutes !
Le hic : c'est viable qu'avec des frameworks récents et le prérequis est python 3.7 et quart ne doit pas avoir de paquet .deb.
Du coup, le primtuxmenu sera dispo pour debian buster (python 3.8) mais délicat pour des versions inférieurs.
Il reste possible de tout encapsuler dans un docker et dans ce cas on s'abstrait de tous les soucis de dépendance...
Sans doute le moyen le plus simple de permettre d'inclure le primtuxmenu pour n'importe quel version de Primtux.
Qu'en pensez-vous ?
J'aimerais posé des bases saines avec un serveur moderne : qui supporte nativement websocket et/ou http2.
Qu'est-ce que ce charabia ?
En rapide, le gros avantage c'est de faire de l'asynchrone (lancé des tâches dont on ne connait pas la durée) et de piloter le site via le serveur.
En gros, si on veut qu'une application de mail soit par exemple averti qu'un nouveau message est disponible sur de l'http 1, il faut faire un truc assez crado ou on met en place une boucle en javascript qui va interroger le serveur tous les x secondes pour savoir si il y a un nouveau message.
crado :
1. parce que c'est plus difficile à maintenir (code spaghetti)
2. ça sollicite plus le navigateur et le serveur pour rien
3. c'est pas du temps réel
Pour pallier à ces limitations, HTTP2 existe désormais et permet de faire du push : çàd que les clients se connectent à un serveur dans un premier temps.
Une fois connecté, le serveur peut leur transmettre des données soit de façon individuel (tel client a eu tel message sur sa boite mail) soit mutuel. (avertissement : la maitresse x sera absente le ...)
Tout ce prélude car ça permettra plein d'évolutions "sympas" à venir.
Ex :
- le professeur veut envoyer un message à tous les élèves
- on veut une barre de progression sur de l'installation/désinstallation.
etc.
Pour l'instant, je suis parti avec Flask qui n'est pas adapté. (toute évolution vers HTTP2 ressemble plutôt à de la bidouille)
Heureusement, j'ai testé la migration vers Quart (même api que Flask) et le saut était fait en quelques minutes !
Le hic : c'est viable qu'avec des frameworks récents et le prérequis est python 3.7 et quart ne doit pas avoir de paquet .deb.
Du coup, le primtuxmenu sera dispo pour debian buster (python 3.8) mais délicat pour des versions inférieurs.
Il reste possible de tout encapsuler dans un docker et dans ce cas on s'abstrait de tous les soucis de dépendance...
Sans doute le moyen le plus simple de permettre d'inclure le primtuxmenu pour n'importe quel version de Primtux.
Qu'en pensez-vous ?

