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

JavaScript Discussion :

Un serveur JS/AJAX fluide sans nodeJS [API HTML5]


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre � l'essai Avatar de Benjiben45
    Homme Profil pro
    D�veloppeur de jeux vid�o
    Inscrit en
    Mai 2016
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activit� : D�veloppeur de jeux vid�o
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2016
    Messages : 3
    Par d�faut Un serveur JS/AJAX fluide sans nodeJS
    Bonjour tout le monde .

    Je me permet d'ouvrir un sujet , car je suis � la recherche d'information pour un petit serveur de jeu (en temps r�el).

    En plus clair :
    Je d�veloppe un petit Cours/Jeu/OpenSource et j'aimerais y impl�menter un mode de jeu Online en temps r�el pour pouvoir y jouer � plusieurs.

    Voila ma question :
    Je sais que NodeJS est la pour �a : Mais je n'ai pas de serveur appropri�.

    Est-ce que si je d�veloppe un code pour actualiser/recevoir des donn�es en AJAX directement de mon serveur et de ma BDD MySql le jeu serait il asser fluide ?

    Je voudrais juste recevoir des info du genre :
    Position x , Position Y de chaque joueur en temps r�el.
    Quelques variables du genre le pseudo , une var type String de l'image du joueur, la vie etc...

    Est-ce que AJAX me permettrais de communiquer asser rapidement avec mon serveur pour r�cup�rer ces infos ?
    ( oui il faut que j'actualise aussi mes donn�es vers le serveur donc g�rer l'envoi de donn�es aussi )

  2. #2
    Membre Expert

    Homme Profil pro
    Ing�nieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur Hospitalier
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par d�faut
    Salut lorsque tu dit :
    Citation Envoy� par Benjiben45
    Je sais que NodeJS est la pour �a : Mais je n'ai pas de serveur appropri�.
    Quel est le serveur dans ce cas, que dispose tu : un h�bergement avec quel possibilit� en terme de langage c�t� serveur PHP, ASP, JSP ?
    Il y a pas que NodeJs c�t� manipulation des websocket c'est trois langage pourrait te donner les m�mes avantages, que pass� par des communications pas du get post qui est plus lourd est surtout moins fluide.
    Par exemple niveau wss installation SSL ou ws tu peux installer le server en PHP https://github.com/headmax/PHP-Websockets r�alis�s par plusieurs devs.
    Un simple client websocket : https://codepen.io/headmax/pen/yvNQeK

  3. #3
    Membre � l'essai Avatar de Benjiben45
    Homme Profil pro
    D�veloppeur de jeux vid�o
    Inscrit en
    Mai 2016
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activit� : D�veloppeur de jeux vid�o
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2016
    Messages : 3
    Par d�faut
    Bonjour , merci de ta r�ponse c'est super !!! Un grand merci !!!

    Citation Envoy� par headmax Voir le message
    Salut lorsque tu dit :
    Quel est le serveur dans ce cas, que dispose tu : un h�bergement avec quel possibilit� en terme de langage c�t� serveur PHP, ASP, JSP ?
    Mon hebergement est avec LWS mutualis� ( forfait : perso ) ,
    sur un serveur apache linux ,
    et PHP ( le reste je ne sais pas et je ne code pas ces langages :S ).

    Ensuite je viens de tester le simple client websocket : C'est tout juste ce qu'il me faut !
    Par contre ( je suis vraiment nul je pense ),
    Meme avec le code source , et le websocket qui pointe vers mon serveur , je n'arrive pas � me connecter )=

    Bon j'ai essayer pleins de manipulations diff�rentes en fouillant sur le net , en installant des librairies diverses , le code source sur GitHub que tu m'a envoy� mais je n'y comprend rien --'

    Que faut il que j'installe sur mon hebergement pour que ce websocket, ( sans Node.js ) Fonctionne ?

  4. #4
    Membre Expert

    Homme Profil pro
    Ing�nieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur Hospitalier
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par d�faut
    Bonsoir @Benjiben45, pour installer un git c'est assez simple dans la mesure que tu as un acc�s ssh sur ta machine linux :
    soit : (ex: si ton domain est pierpoljack.com, tu cr�er un sous domaine api.pierpoljack.com) chez ton h�bergeur ensuite tu te connecte en ssh sur la machine :
    Code sh : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    //tu creer un vhost pour ton nouveau sous domaine
    sudo cp cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/api.pierpoljack.com.conf
    //tu edit ton vhost pour mettre les bons accès et directives
    sudo nano /etc/apache2/sites-available/api.pierpoljack.com.conf
    <VirtualHost *:80>
            ServerName api.pierpoljack.com
     
            ServerAdmin [email protected]
            DocumentRoot /var/www/html/api.pierpoljack.com
     
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    //ctrl +x  et O pour enregistrer (oui)
    //en va dans notre root  d'apache
    cd /var/www/html/
    //on créer notre dossier nommé api.pierpoljack.com dans lequel on va mettre les fichiers du git qu'on vient de dupliquer
    sudo git clone https://github.com/headmax/PHP-Websockets.git api.pierpoljack.com
    //on active notre nouvelle api
    sudo a2ensite api.pierpoljack.com.conf
    //on recharge les fichiers de config d'apache
    sudo /etc/init.d/apache2 reload  
    //ou sudo service apache2 reload ou sudo apachectl reload

    Tu peux ouvrir et tester ton nouveau serveur websocket :

    Code sh : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //on va dans notre site api
    cd api.pierpoljack.com/
    //on lance le serveur de test
    php testwebsock.php
    Server started
    Listening on: 0.0.0.0:9000
    Master socket: Resource id #6
    On voit que notre serveur de websocket �coute bien sur le port 9000
    on n'a plus qu'a tester avec le client si tout est bon
    http://api.pierpoljack.com/client.html
    Code sh : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    //on voit bien que notre client est bien connect� au serveur de socket sur le terminal
    Server started
    Listening on: 0.0.0.0:9000
    Master socket: Resource id #6
    Client connected. Resource id #7

  5. #5
    Membre � l'essai Avatar de Benjiben45
    Homme Profil pro
    D�veloppeur de jeux vid�o
    Inscrit en
    Mai 2016
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activit� : D�veloppeur de jeux vid�o
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2016
    Messages : 3
    Par d�faut Merci headMax
    Salut , et un grand merci pour ton aide !
    Bon j'ai essayer de me connecter en ssh ( ce qui est tout nouveau pour moi ^^ ) j'adore apprendre

    Apr�s quelques tentatives et recherches sur le net , je ne peut malheureusement pas me connecter dessus en ssh :/

    Pas de soucis , j'ai donc essayer de coder sur echo.websocket.org , et je me suis dit :
    - H� ! Peut �tre que je peut trouver des petits serveurs gratuits juste pour tester ?
    j'ai trouver 'heroku' et je me suis mit dessus ^^

    Bon je vous explique pas la gal�re pour comprendre comment �a fonctionne les sockets ^^ ca me faisait penser � l'�poque ou j'ai commencer � coder en C++ tout seul sans aucune connaiscances en prog )=
    Mais bon , apr�s avoir essayer encore pleins de librairies , je suis passer sur node.js ( Je n'ai jamais travailler avec mais c'est super ouf ! )
    J'ai utiliser la librairie Socket.IO , cr�er un premier template de chat pour m'exercer et modifier deux trois fonctions pour que l'on puisse envoyer diverses infos en plus !

    Maintenant que j'ai commencer � me faire la main , je suis pass� a mon template pour envoyer certaines variables plus complexes , et j'utilise le JSON pour �a , et un peu d'orient� Objet pour la table des utilisateurs conn�ct�s : (Avec leurs ID unique , si ils se d�connectent on retire un user,
    on actualise un tableau JSON avec l'id , socked.id , le pseudo , la variable Position X et Y ...
    c'est TOP mais je me suis vraiment creus� la t�te !

    Merci en tout cas headMax tu m'as vraiment aid�:

    je suis en train de faire un jeu sur navigateur avec JS/PHP OPENSOURCE, et compatible sur navigateur mobile , sur lequel j'�cris un cours complet

    j'ai mon premier template qui est (d�j� jouable) mais on ne joue pas online il y � juste quelques fontions de base avec Ajax par exemple pour ajouter le score � la fin de la partie , une partie utilisateur , une table des scores .....
    La grace � toi je vais pouvoir mettre � jour mon deuxi�me template pour un jeu online ( pour l'instant c'est juste un canvas avec des carr�s qui s'actualisent avec la position des joueurs mais jsuis pas peu fier )
    *

    [PS]: d�sol� pour l'orthographe ^^

  6. #6
    Membre Expert

    Homme Profil pro
    Ing�nieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur Hospitalier
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par d�faut
    Tant mieux je pense que c'est plus adapt� et au moins 100% js , tu as bien compris socket.io est l'utilisation sa propre g�n�ration d'id unique les differents attributes connected ... assez simple pour retir� de la liste des personnes connect�s, tu pourras facilement g�r� le jeux avec cette lib, j'ai eu l'occasion de jouer entre socket.io et webgl pour un jeux en 3D le m�me genre qu'on retrouve sur playcanvas "tank". https://playcanv.as/p/y4412Fkr/

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [AJAX] Comment envoyer au serveur une seul info sans recharger la page
    Par Ekimasu dans le forum G�n�ral JavaScript
    R�ponses: 9
    Dernier message: 15/11/2007, 12h10
  2. 2 serveurs SQL sur m�me SAN
    Par questar dans le forum MS SQL Server
    R�ponses: 4
    Dernier message: 28/04/2007, 16h55
  3. [AJAX] classement sans modification de la page
    Par franfr57 dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 10/04/2007, 10h39
  4. [AJAX] Cherche Chat php / ajax / XMLHTTPRequest sans SQL
    Par fabien14 dans le forum G�n�ral JavaScript
    R�ponses: 10
    Dernier message: 25/02/2007, 12h23
  5. [AJAX] charger images du serveur avec ajax
    Par Tail dans le forum G�n�ral JavaScript
    R�ponses: 8
    Dernier message: 19/02/2007, 14h38

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