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

NodeJS Discussion :

Mode Clients Serveur


Sujet :

NodeJS

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    378
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 378
    Points : 94
    Points
    94
    Par défaut Mode Clients Serveur
    Bonjour,
    Parmi les experts node ici présents pouvez-vous me dire, si avec node et des extensions il est possible de fonctionner en mode clients serveur autonomes.

    Je m'explique, l'objectif est de créer des packages :
    1 serveur
    1 client sachant qu'il peut y avoir x clients

    les clients fonctionnent un peu comme des serveurs.
    Ils sont installés sur des machines et ils contactent le serveur :
    -soit parce qu'un trigger à déclenché une action
    - soit par rapport à un timing
    - soit le serveur le contact pour lui demander de faire un état des lieux.

    je pense que cela est réalisable car les clients sont aussi des serveurs

    ensuite l'objectif est de packager pour pouvoir faire une installation du type daemon sur les machines

    Merci

    si vous avez des exemples je suis preneur

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 311
    Points : 545
    Points
    545
    Par défaut
    J’imagine que par client/serveur autonomes, tu sous-entends des processus tournant sur des machines différentes et communiquant à travers un réseau?
    Si c’est le cas tu devras choisir un protocole de communication IP, Node.js sait en gérer 5 par défaut:

    Si tu choisi le protocole HTTP/HTTPS et que tu désire utiliser une vrais communication bi-directionel tu devras utiliser le protocole websocket , je te conseils d’utiliser le module socket.io à installer avec npm

    Les timers sont disponible sans aucun module additionnel.

    parce qu'un trigger à déclenché une action
    Tu devras, certainement, utiliser le prototype EventEmitter pour déclencher des évènements asynchrones

    Bref ! Rien n’est impossible avec Node.js l’essayé c’est l’adopter
    ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
    ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    378
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 378
    Points : 94
    Points
    94
    Par défaut
    Merci,
    je vais effectuer une communication avec ssl donc https.
    j'ai cherché de mon côté et effectivement je suis tombé sur socket.io

    par contre je ne trouve que des exemples avec un serveur pur node et un client html avec script node.

    Par contre je ne trouve pas d'exemple serveur node pur avec un client node pur qui se connecte simple même avec http non sécurisé.

    comme tu à l'air de bien t'y connaitre.
    Sais tu où je peux trouver un exemple car c'est mon point de démarrage.
    Merci

  4. #4
    Membre confirmé

    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 311
    Points : 545
    Points
    545
    Par défaut
    je ne trouve que des exemples avec un serveur pur node et un client html avec script node.
    Normal, car le protocole WebSocket a été conçu pour la communication entre un serveur et un navigateur. Si tu ne désires pas la compatibilité navigateur de ton code client, pose toi la question sur l’intérêt d’utiliser un tel protocole.

    je ne trouve pas d'exemple serveur node pur avec un client node pur qui se connecte simple même avec http non sécurisé.
    Y a une petite subtilité socket.io est dépendant du module socket.io-client. il suffit juste de remplacer
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="/socket.io/socket.io.js"></script>
    par
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    var io = require('socket.io-client');

    Petit exemple :
    Code serveur : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    var app = require('http').createServer()
      , io = require('socket.io').listen(app)
     
    app.listen(80);
     
    io.sockets.on('connection', function (socket) {
      socket.emit('news', { hello: 'world' });
      socket.on('my other event', function (data) {
        console.log(data);
      });
    });
    Code client : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var io = require('socket.io-client');
     
    var socket = io.connect('http://localhost');
      socket.on('news', function (data) {
        console.log(data);
        socket.emit('my other event', { my: 'data' });
      });

    je vais effectuer une communication avec ssl donc https
    J’ai oublié un autre module par défaut de Node.js (je réédite mon 1er post) pour effectuer des comunication securisé TLS, donc il n’est pas nécessaire d’utiliser du HTTPS
    ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
    ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    378
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 378
    Points : 94
    Points
    94
    Par défaut
    Merci,
    Je vais regarder ce que tu as laissé.


    Ce que je veux réaliser est une app server en node.js

    et des daemons en node.js qui seront sur d'autres machines.

    Au même titre que l'on peut faire cela en C, python, ....

    Le server contacte les daemon pour envoyer ou demander des informations soit ponctuellement soit avec des timers

    et les clients répondent au serveur ou transmettent des informations à des moments déterminés (timer, trigger)

    Donc j'essaye d'étudier la faisabilité avec le langage node

Discussions similaires

  1. H2 Database mode client-serveur
    Par nma dans le forum JDBC
    Réponses: 1
    Dernier message: 23/09/2014, 17h40
  2. Sortir proprement mode Client / Serveur
    Par Viduc dans le forum Général Java
    Réponses: 5
    Dernier message: 17/03/2013, 13h01
  3. programmation en mode client serveur
    Par biologue2003 dans le forum Développement
    Réponses: 1
    Dernier message: 09/01/2009, 19h11
  4. Mode Client-Serveur sous Windows XP ?
    Par habilité dans le forum Tcl/Tk
    Réponses: 2
    Dernier message: 21/04/2008, 21h36

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