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

C# Discussion :

Net Remoting, full duplex


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 26
    Par défaut Net Remoting, full duplex
    Bonjour,

    Dans le cadre d'un projet d'étude je doit réaliser une application client serveur.

    Celle-ci est un jeu de blackjack, la solution est la suivante :

    -Le client
    -le serveur communication
    -le serveur métier
    -le serveur mapping
    -le serveur sql server

    La connexion entre les serveurs ne doit pas être en full duplex cependant on nous demande d’implémenter une connexion full duplex entre le client et le serveur communication. Nous devons utiliser le .net remoting.

    Nous sommes dans l'impasse car il n'y a que très peu de doc sur le full duplex.

    Si quelqu'un peux m'éclairer, voir même me donner une petit exemple ^^.

    Merci d'avance

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par djfou Voir le message
    -Le client
    -le serveur communication
    -le serveur métier
    -le serveur mapping
    -le serveur sql server
    Euh... tout ça pour un jeu de blackjack ?

    Sinon, essaie d'expliquer plus précisément ce qui te pose problème, parce que là c'est un peu flou... Qu'est-ce que tu entends par full-duplex ? que le serveur peut parler au client ? Ce n'est pas très compliqué en fait :

    - Crée une interface par laquelle le serveur appelera le client (appelons la IClientCallback par exemple). Place là dans une DLL qui sera référencée par le client et le serveur
    - Implémente l'interface IClientCallback côté client. La classe qui l'implémente doit hériter de MarshalByRefObject (appelons la ClientCallback par exemple)
    - Quand tu te connectes au serveur, passe une instance de ClientCallback au serveur, qui l'utilisera pour rappeler le client

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Il fait peut-être allusion à des appel OneWay avec/sans réentrance ? Il n'ya pas de notion de half/full duplex en .net remoting à ma connaissance, c'est donc sur la définition de la com que vous allez définir votre modèle half duplex

    On peut avoir la logique de com entre les différents services ? L'interface, les séquences d'appels...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 26
    Par défaut
    Merci pour ces réponses.

    Je m'explique un peu, le client et le serveur doivent pouvoir discuter en même temps sur le même flux de donné. C'est un concept un peu nouveau pour moi effectivement. Le serveur doit pouvoir notifier a tous ces client que l'un des joueur vient de jouer. Un solution que j'ai trouvé mais qui me déplaît c'deux créer deux net remoting en intervertisant le client et le serveur.


    Merci d'avance et si vous pourriez me montrer un exemple tous simple sur comment l'implanter sa m'aiderai énormément car nous sommes trois sur le projet, on la commencé hier et nous devons le rendre vendredi prochain ^^.

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par djfou Voir le message
    Merci d'avance et si vous pourriez me montrer un exemple tous simple sur comment l'implanter sa m'aiderai énormément
    La solution que je t'ai indiquée ne te convient pas ? C'est comme ça qu'on fait dans mon projet au boulot, ça fonctionne très bien...

    Citation Envoyé par djfou Voir le message
    car nous sommes trois sur le projet, on la commencé hier et nous devons le rendre vendredi prochain ^^.
    ça me rassure un peu de voir que les étudiants ne changent pas trop avec le temps

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Arnard Voir le message
    Il fait peut-être allusion à des appel OneWay avec/sans réentrance ? Il n'ya pas de notion de half/full duplex en .net remoting à ma connaissance, c'est donc sur la définition de la com que vous allez définir votre modèle half duplex
    Il existe bien une notion de DuplexContract en WCF (très pratique et permettant de faire de l'asynchrone coté serveur) mais pour une raison que j'ignore il préfére utiliser Remoting (qui est quand même un peu daté et plus vraiment utilisé actuellement).

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    mais pour une raison que j'ignore il préfére utiliser Remoting
    Apparemment ce n'est pas un choix :

    Citation Envoyé par djfou
    Nous devons utiliser le .net remoting
    C'est un projet d'étude, je suppose que le prof a imposé ça...

    [parenthèse]
    Ca m'énerve les profs qui imposent l'utilisation de vieilles technos parce qu'ils ne maitrisent pas les nouvelles...
    [/parenthèse]

  8. #8
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Quand tu fais une évolution tu ne choisis pas forcément une techno, et wcf encapsule tout, ne pas comprendre la logique n'est pas pédagogique, cela ne me choque pas. Mais on n'a toujours pas le détail xD

  9. #9
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Apparemment ce n'est pas un choix :

    C'est un projet d'étude, je suppose que le prof a imposé ça...
    En effet, j'avais zappé ce point (c'est çà de lire de manière trop synthétique )

    [parenthèse]
    Ca m'énerve les profs qui imposent l'utilisation de vieilles technos parce qu'ils ne maitrisent pas les nouvelles...
    [/parenthèse]
    Je ne peux qu'approuver

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 3
    Par défaut
    Citation Envoyé par tomlev Voir le message
    - Crée une interface par laquelle le serveur appelera le client (appelons la IClientCallback par exemple). Place là dans une DLL qui sera référencée par le client et le serveur
    - Implémente l'interface IClientCallback côté client. La classe qui l'implémente doit hériter de MarshalByRefObject (appelons la ClientCallback par exemple)
    - Quand tu te connectes au serveur, passe une instance de ClientCallback au serveur, qui l'utilisera pour rappeler le client
    Bonjour,
    je suis en train de faire une application client / serveur en utilisant .Net remoting.

    Les appels du client vers le serveur marche bien. Par contre je n'arrive pas à faire d'appel serveur vers client.

    Par exemple :

    3 clients sont connectés c1, c2 et c3.
    c1 est en train de jouer donc il dialogue avec le serveur (client -> serveur).
    une fois qu'il a fini son tour, le serveur doit dire a c2 vas y c'est à toi de jouer et c'est là que mon problème se pose...

    Je suis donc tombé sur ce forum, mais je n'arrive pas à faire ça :

    - Quand tu te connectes au serveur, passe une instance de ClientCallback au serveur, qui l'utilisera pour rappeler le client
    Si quelqu'un peut m'expliquer plus en détail comment passer l'instance de ClientCallback au serveur...

    Merci!

Discussions similaires

  1. [C#][FW 2.0] Comment utiliser le .NET Remoting ?
    Par Mecano14 dans le forum C#
    Réponses: 7
    Dernier message: 22/02/2009, 13h28
  2. Réponses: 1
    Dernier message: 20/06/2006, 15h11
  3. [C#]Problème avec la sécurité et .NET REMOTING
    Par tidou dans le forum Windows Forms
    Réponses: 1
    Dernier message: 16/05/2006, 09h16
  4. [.NET] Remoting
    Par kaff dans le forum Général Dotnet
    Réponses: 6
    Dernier message: 31/03/2006, 18h17
  5. [.NET Remoting] Comment transferer un Dataset ?
    Par B.AF dans le forum Framework .NET
    Réponses: 2
    Dernier message: 30/12/2005, 22h34

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