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

Entrée/Sortie Java Discussion :

[Sockets] Serveur Java performant


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 26
    Par défaut [Sockets] Serveur Java performant
    Bonjour à tous,
    Je me présente, je m'appelle Mickaël, j'ai 17 ans et je vais sur la Terminale. Je suis principalement développeur as 3.
    Depuis environs 6 mois je réalise un chat en 2D isométrique en Actionscripte 3.0. La partie serveur est en java. J'utilise blablaserveur que j'ai modifié pour traiter les sockets qu'il reçevait.
    Le projet a pour but de m'améliorer.
    Seulement voilà avec blablaserveur un thread est dédié par client hors j'ai cru comprendre que ce n'était pas géniale avec beaucoup de connectés.
    Le soucie c'est que je ne vois pas comment gérer les clients individuellement sans leur attribuer un thread.
    Par exemple comment envoyer un message à un unique client s'ils sont tous dans le même thread ?
    Enfin voilà c'est un peu flou c'est pour cela que je vous demande un peu d'aide pour m'éclairer sur la façon de créer un serveur performant en java.
    Si vous avez des conseils, liens, où autre je suis preneur.

    Le projet ne sera pas publique, c'est juste pour réaliser quelque chose de bien, avoir de bonnes bases pour la suite et surement le mettre open-source.

    Merci de votre aide,
    Mickaël

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    C'est jouable en utilisant le système de socket non bloquantes fourni dans l'API nio.

    Par contre tu vas devoir revoir ton serveur au niveau conceptuel.
    Et pour une couche réseau bien foutue tu as Netty qui propose une API très bien pensée par dessus NIO.

  3. #3
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 26
    Par défaut
    Merci de ta réponse,
    Netty semble bien, malheureusement je ne trouve pas beaucoup d'explications. (je n'aime pas me contenter de copier/coller) Je continue de faire des recherches de mon côté. SI vous avez d'autres conseils concernant le langage ou l'architecture je suis preneur.

    Merci encore,
    Mickaël

  4. #4
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Le user guide n'a pas l'air si mal foutu que ça....
    http://docs.jboss.org/netty/3.2/guide/html/index.html

  5. #5
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 26
    Par défaut
    Merci, en effet c'est sur quoi j'étais tombé.
    Il est très bien fait mais je ne comprends toujours pas tout. Je n'arrive pas vraiment à savoir quelle partie correspond à ce que je cherche. Si j'ai compris la connexion d'un client sur le serveur est représentée par un channel mais cela reste encore flou. Je ne comprends pas vraiment que sont les discard serveur, echo serveur et time serveur.

    Je suis désolé, il s'agit surement de questions ridicules mais je préfère tout de même vous les poser.
    La programmation serveur est vraiment une chose que j'aimerais comprendre et savoir réaliser.

    Merci de vos réponses,
    Mickaël

  6. #6
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Dans ce cas là il va falloir commencer par lire un peu de doc sur l'API nio de java, et les concepts sous jacents:

    http://gfx.developpez.com/tutoriel/java/nio/
    http://rox-xmlrpc.sourceforge.net/niotut/index.html
    http://www.google.fr/url?sa=t&source...zfAENA&cad=rja

    Ensuite pour ce qui est des discard, echo et time server, ce sont des exemple d'implémentation de RFC, il suffit de cliquer sur les liens dans le user guide pour voir à quoi correspondent ces RFC (basiquement DISCARD ne renvoie absolument rien, ECHO renvoie le contenu reçu et TIME renvoie l'heure)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Concevoir un serveur Java performant pour RIA Flash
    Par bokan dans le forum Général Java
    Réponses: 1
    Dernier message: 20/05/2011, 17h34
  2. Concevoir un serveur Java performant pour RIA Flash
    Par bokan dans le forum Dynamique
    Réponses: 0
    Dernier message: 19/04/2011, 13h33
  3. [Socket] Chaine entiere a envoyer a un serveur Java
    Par n8ken dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/09/2006, 15h58
  4. [Socket] Probleme entre un Client C et un serveur JAVA
    Par bpy1401 dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 28/02/2006, 08h40
  5. [SOCKET] Client C connecté à un serveur Java
    Par missllyss dans le forum Développement
    Réponses: 2
    Dernier message: 07/06/2004, 13h14

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