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

Langage Java Discussion :

Appli qui ecoute sur plusieurs ports


Sujet :

Langage Java

  1. #1
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut Appli qui ecoute sur plusieurs ports
    Bonjour,

    Je compte faire une appli qui peut recevoir des messages sur differents ports (suivant la nature des messages). Sachant qu'un serveur ecoute que sur un port, je suis partis a faire une appli qui cree un serveur par port desire.

    Est ce le bon raisonnement ?

    Merci.

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Oui, tu peux créer un serverSocket sur chaque port que tu désires utiliser, tout ça au sein de ton application.

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

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Un serveur écoute sur autant de ports qu'il le désire (par exemple tel port pour les communications HTTP tel autre pour HTTPS et ainsi de suite.

    Donc deux choix en face de toi un couple thread - socket par port à écouter.
    Ou utiliser un seul thread et les operations IO non bloquantes de de java.nio
    ++

  4. #4
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut
    Mhh sinok je vais jeter un oeil sur ta deuxieme solution car je vois pas trop comme ca !

    Merci

  5. #5
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut
    Ah j'ai un autre petit prob...
    Je cree donc trois SocketServer avec une boucle for.
    Le premier se lance et attends une connection, du coup les deux autres se lencent pas car ils attendent que le premier est fini pour que la boucle for passe a eux...
    Logique...

    Comment y remedier ?

  6. #6
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Comme l'a dit Sinok, avec unThread par socketServer, par exemple.

  7. #7
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut
    je comprends plus rien
    J'ai pourtant fais un truc comme ca...
    Je cree 3 serveurs. je les execute, mais le .accept du premier bloque le lancement des deux autres...

  8. #8
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Puisque le accept est bloquant, il faut qu'il soit exécuté dans un autre thread que le thread principal pour ne pas bloquer l'exécution des autres accept.
    Tu comprends ?

  9. #9
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut
    ah ok!
    bon jvai reflechir la dessus
    merki

  10. #10
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Points : 96
    Points
    96
    Par défaut
    Aye ca marche Merci.
    Quand a sinok je ta methode m'interesse pas mal. j'ai trouve qq trucs mais si t'as un ptit exemple a me proposer a l'occasion je ne suis pas contre

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

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977

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

Discussions similaires

  1. [Imprimante] Lire les données qui transitent sur un port paralléle
    Par gastoncs dans le forum Périphériques
    Réponses: 7
    Dernier message: 29/07/2011, 21h15
  2. ecoute ssh sur plusieurs ports?
    Par eomer212 dans le forum Réseau
    Réponses: 4
    Dernier message: 05/08/2009, 20h09
  3. exporter les donneés qui arrivent sur un port TCP
    Par zaki_1982 dans le forum Développement
    Réponses: 3
    Dernier message: 22/04/2008, 01h07
  4. Ecouter sur un port HTTP
    Par gufra dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 10/01/2008, 18h00
  5. Réponses: 4
    Dernier message: 15/07/2007, 08h22

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