Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/03/2018, à 20:57

dubis22

[RESOLU] websocket à quoi ça sert ?

Bonjour

J'aimerais travailler sur du développement Javascript PHP pour interroger une base MariaDB. J'ai beaucoup lu d'information sur les websockets sur des sites en anglais. J'ai bien peur que je sois passé à coté d'information cruciales. J'ai réussi à faire fonctionner des applications en suivant des tutoriels mais je n'ai pas tout compris ce que je faisais. Car quand j'essaye de transformer mes informations vers la finalité du projet je me retrouve de-suite face à un mur. 
J'ai donc les questions suivantes :

Peut-on substituer un serveur type LAMP sans la partie "data base" avec un serveur websocket qui interpréterait du PHP ? si oui comment ?

Peut-on faire du websocket à distance ? La plus part des tutos dirigent le port ws sur du localhost du coup impossible d'interroger une machine distante. Naturellement la page cliente de la websocket aurait une adresse IP du coup.

Comment faire pour qu'un serveur websocket écrit en Python interprète du PHP installé sur la même machine hote ? J'ai essaye de faire des requêtes en javascript sur la data base cela n'a pas fonctionné. Apparemment le PHP est plus sécurisés car les identifiants n'apparaissent pas dans la page html

Merci d'éclairer ma petite lanterne.

Dernière modification par dubis22 (Le 27/03/2018, à 12:45)


Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont.

Hors ligne

#2 Le 27/03/2018, à 09:12

kholo

Re : [RESOLU] websocket à quoi ça sert ?

salut,
je suis autodidacte et je suis passé par tes questions... enfin presque...
websocket est pour une communication bidirectionnelle un peu comme dans un pipe ou un fifo.
il faut se méfier car tout le monde reprend et surcharge sous prétexte de parseur objet performant
et on fini par plus trop savoir ce qu'il y a dedans.
tout ça pour dire que tu peux y mettre tout ce que tu veux (en texte).
Si derrière tu te mets à parser du code, autant prendre le parseur officiel sinon tu réinventes la roue !

c'est là qu'on trouve des solutions comme docker et cie qui permettent de mettre en place une batterie de services
puis de tout fermer quand plus de besoins.
si tu veux du dur, il faut un serveur et LAMP (ou LAMPP ou ...)
par serveur, je parle matériel ou virtuel (j'ai des serveurs occasionnels en VM sur mon PC portable).

donc, de mon expérience, je suis parti sur le javascript, bien pour travailler en local
et donc websocket dessus pour faire de la com pure (chat par exemple).

Pour conserver des données, une base (tu cherches avec MariaDB) est parfaite.
Je suis parti sur le PHP et PDO pour les accès (ça semble plus généraliste)
et je fais des tests en sqlite pour facilement passer à Mysql ensuite.
c'est long et fastidieux et faut s'accrocher pour que ça rentre (surtout la prog Objet pour mon cas !)

Si tu te demandes pourquoi cela devient si difficile, c'est juste pour la sécurité
la prog html utilise des injections par des requêtes
dont il faut soigner le traitement de ces requêtes car c'est une porte pour le détournement 

maintenant pour "à distance" : ce n'est qu'une question de routage.
il faut ouvrir une porte sur l'extérieur (DMZ) et gérer la serrure (port knocking...) avec le parefeu

maintenant si tu veux commencer par le début :
tu montes un petit ensemble de services...
pour moi c'est apache2 mysql php phpmyadmin car c'est généraliste
et j'ai un tuto ici
tu peux t'en inspirer et mettre MariaDB (et la doc !)
tu pourras déjà commencer à coder javascript et php et faire des accès bases

cool

Hors ligne

#3 Le 27/03/2018, à 12:45

dubis22

Re : [RESOLU] websocket à quoi ça sert ?

Merci Kholo,

Si j'ai bien interprété tu me conseille de faire un classique LAMP en perdant l'information instantanée avant d'envisager un WebSocket.
Je pensait que le WebSocket était créé pour développer des application en local mais en fait cela à l'air bien plus que cela, et c'est intégré dans les sites.


Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont.

Hors ligne

#4 Le 27/03/2018, à 12:57

krodelabestiole

Re : [RESOLU] websocket à quoi ça sert ?

dubis22 a écrit :

J'ai beaucoup lu d'information sur les websockets sur des sites en anglais. J'ai bien peur que je sois passé à coté d'information cruciales. J'ai réussi à faire fonctionner des applications en suivant des tutoriels mais je n'ai pas tout compris ce que je faisais.

je pense effectivement que tu trouveras des tutos et explications plus complètes en cherchant un peu que ce qu'on pourrait te filer comme info ici. le forum n'est pas adapté pour donner des "cours" complets...


dubis22 a écrit :

Peut-on faire du websocket à distance ? La plus part des tutos dirigent le port ws sur du localhost du coup impossible d'interroger une machine distante.

euh oui.. c'est l'idée même du protocole...


dubis22 a écrit :

Comment faire pour qu'un serveur websocket écrit en Python interprète du PHP installé sur la même machine hote ? J'ai essaye de faire des requêtes en javascript sur la data base cela n'a pas fonctionné.

houlala, ça fait beaucoup de technos... python + php + javascript ? + apache...

tu peux techniquement utiliser websocket avec Apache et PHP, mais à moins que tu aies déjà développé ton application ou que tu comptes utiliser des fonctionnalité que seul PHP implémente, je ne te conseille pas de partir là dessus pour une application qui ferait un usage intensif des websocket (à moins que tu sois fan des librairies externes et de json_encode json_decode...). ceci dit tu trouveras quand même des tutos à ce sujet : http://www.raphael-goncalves.fr/blog/ch … -websocket

en gros je te conseille plutôt de choisir un langage unique comme javascript ou elm avec lequel tu pourras aussi bien développer ton application côté serveur que côté client (en plus d'être plus sexy que php, et de fournir directement un serveur http via nodejs).

Hors ligne

#5 Le 27/03/2018, à 14:55

dubis22

Re : [RESOLU] websocket à quoi ça sert ?

Merci krodelabestiole,

En fait j'avais trouvé des Tutos principalement en anglais. Cela prend plus de temps à analyser. Le tiens en français est très sympa. J'ai fait cela en 5 minutes. Naturellement PHP était déjà installé sur la machine distante (paquet : php7.0-fpm). De plus,  il a l'avantage de fonctionner. La réponse des requête sse fait dans le terminal où l'on lance le serveur PHP du de la machine distante. Du coup comprend mieux, mais s'il pouvait renvoyé le message du terminal dans la page du navigateur ce serait TOP.

Dernière modification par dubis22 (Le 27/03/2018, à 14:55)


Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont.

Hors ligne

#6 Le 27/03/2018, à 17:52

krodelabestiole

Re : [RESOLU] websocket à quoi ça sert ?

un forum sympa sur lequel tu trouveras des gens sans doute plus spécialisés qu'ici : https://www.grafikart.fr/forum

il y a plein de tutos associés à une chaîne youtube que je te recommande chaudement : https://www.youtube.com/user/grafikarttv/playlists

par contre je crois pas qu'il y ait grand chose sur ws à part ça sur socket.io mais qui date de 2013, et rien sur ratchet

Hors ligne