Communiquer avec le serveur depuis un navigateur Web : XHR, SSE et WebSockets
Dans cette dépêche, nous allons faire un tour d’horizon de différentes manières de communiquer avec un serveur depuis une application Web, avec un petit peu d’histoire, avant de rentrer plus profondément dans le fonctionnement des WebSockets, que nous allons démystifier. Nous digresserons ensuite à propos de la gestion (problématique) des requêtes longues et de HTTP 2 avec Apache, et nous discuterons d’une manière de limiter la casse. La dépêche contient quelques morceaux raisonnables mais l’absurdité est latente.
Supposons que nous ayons une application Web qui a besoin de recevoir des évènements du serveur pour voir si quelque chose s’est passé. À tout hasard, un jeu de société en ligne. Ce jeu a besoin d’envoyer les coups des joueurs et joueuses, et de recevoir les coups des autres.
Le serveur ne peut pas contacter le navigateur. Celui-ci est peut-être derrière un pare-feu, et de toute façon il n’y a pas de méthode pour cela. Le modèle du web, c’est une requête HTTP de la part du navigateur, et le serveur sert cette requête. Et puis, à la base, une requête = un chargement de page.
Mais des techniques sont apparues pour abuser de ce modèle, puis les standards se sont mis à intégrer des méthodes pour mener ces abus en toute sérénité.
Journal MPRIS-Sync : Regardez des films ensemble par internet
J’ai voulu regarder une série avec ma sœur, parce que c’est quand même bien sympa de s’entendre mutuellement rire pendant les épisodes.
Sauf que problème, on n’habite pas dans la même ville. Comment alors regarder en même temps, facilement, une série ensemble, sans trop de décalage avec possibilité de repasser une scène qui nous a particulièrement amusé ?
Je n’ai pas trouvé de solution libre permettant de diffuser facilement, sans gros décalage, depuis un ordinateur vers un autre ordinateur sur (…)
Forum Programmation.c++ gestion des capabilities
Bonjour.
Dans le cadre de mon projet jiguiviou, j'expérimente un client GVSP (un client de flux vidéo très haut débit) avec une socket dont le ring buffer est mappé en espace utilisateur. La gestion des interruptions du NIC et les multiples appels systèmes générés par recvmmsg consomment beaucoup de temps CPU, j'espère trouver dans cette méthode une solution élégante.
Pour cela j'utilise une socket packet. Le processus doit avoir un UID effectif nul ou la capacité CAP_NET_RAW.
J'ai donc isolé (…)
Forum Linux.embarqué ACK-TCP
Bonjour à tous
Je développe depuis quelque temps un systéme embarqué avec un MODEM GPRS sous eCos. En gros le systéme fais de l’acquisition de capteurs et émet des données à un serveur, la connexion GPRS coûte chère, j’envoie des paquets binaire, et pour s'assurer que le paquet et bien reçu j'utilise le ACK-TCP, au lieu de créer un ACK soft.
pour intercepter le ACK-TCP j'utilise l'option SO_SNDLOWAT (send buff low water mark) qui est paramétrée avec la (…)
Forum Programmation.perl PHP client -> Perl serveur (communication socket)
Bonjour
J'aimerais faire appel à un script PERL qui écoute sur un port via un script PHP. Je ne suis pas loin du résultat (test pour le moment)
Le problème est que ma page php (pour le moment lancé en CLI) bloque au socket_read() . A savoir que sur le serveur quand je remplace par "toto" ça roule de bout en bout mais dès que j'essaye de lire ça bloque…
Une idée lumineuse? Une piste?
Note : j'ai fait un (…)