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 :

c++ et RPC, quelques questions


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut c++ et RPC, quelques questions
    Bonjour,

    je ne trouve pas beaucoup de documentation sur le RPC. J'ai trouvé quelques exemples, mais rien qui ne réponde à mes questions. En espérant que certains d'entre vous connaissent le RPC, je vous les pose donc (les questions):

    1. Le principe du RPC c'est:
    a. Une application A qui tourne sur un serveur S
    b. Un stub qui fais le lien entre l'OS du serveur S et mon appication A
    c. Un client C qui appelle les fonctions définies dans le stub
    Le reste, ce sont les OS qui s'en occupent.

    Est-ce bien résumé?

    2. Si, depuis mon client C, je souhaite appeler des fonctions appartenant à plusieurs programmes différents sur le serveur S, dois-je créer un stub pour chaque application? (Ou est-ce qu'un seul stub permet d'utiliser plusieurs applications?)

    3. Si, à la place d'application (exécutables) j'ai des dlls. Est-ce tout de même faisable d'appeler les fonctions de ces dll via RPC? Si oui, dois-je faire un stub pour chaque dll?

    4. Avez-vous des liens intéressants concernant le RPC?

    Merci par avance

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Citation Envoyé par r0d Voir le message
    4. Avez-vous des liens intéressants concernant le RPC?
    tutoriel gSoap

  3. #3
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut


    Non mais d'après ce que j'ai compris, gSoap c'est pas vraiment du RPC, c'est carrément du webService. Ici, je veux qu'un ordinateur appelle des fonctionnalités présentes sur d'autres ordinateurs, mais dans le même réseau local, il n'y a donc pas besoin de passer par gSoap (et d'experience, et même si gSoap est très bien, si on peut s'en passer c'est pas plus mal).

    Or si je ne m'abuse, les OS implémentent déjà leurs services RPC. C'est donc cette solution qui m'intéresse pour l'instant, car bien plus simple, et donc moins compliquée (non ce n'est pas une contrepèterie).

  4. #4
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    RPC est un terme assez générique. On parle souvent de RPC même au sein de la même machine, entre deux applications différentes.

    Soap est un moyen de faire du RPC, Java offre un bon support du xml-rpc, dbus permet de faire du RPC, mais sans support réseau me semble-t-il, côté windows on utilise plutôt COM/Corba, côté .Net, plutôt les webservices, mais il me semble qu'il y a quelque chose dans les WCF pour faire du RPC à travers réseau...

    Bref, comme tu dis, le sujet est vaste, et peut-être faudrait-il mieux que tu détailles un peu plus ton environnement si tu ne veux te retrouver avec une bibliothèque à lire .

    Or si je ne m'abuse, les OS implémentent déjà leurs services RPC. C'est donc cette solution qui m'intéresse pour l'instant, car bien plus simple, et donc moins compliquée (non ce n'est pas une contrepèterie).
    A part windows, pour les autres, je ne vois pas.

  5. #5
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Pour moi, RPC ce n'est jamais qu'un moyen de presenter une API client/serveur a l'aide de generateurs de code et de bibliotheques pour en simplifier l'implementation. Le cout, c'est que les appels sont des points de synchronisation et donc qu'on ne peut pas faire autre chose en attendant la fin de la fonction appelee, sauf a tapper dans les threads.

    En passant, j'avais l'impression que c'etait passe de mode.

  6. #6
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet Voir le message
    Pour moi, RPC ce n'est jamais qu'un moyen de presenter une API client/serveur a l'aide de generateurs de code et de bibliotheques pour en simplifier l'implementation. Le cout, c'est que les appels sont des points de synchronisation et donc qu'on ne peut pas faire autre chose en attendant la fin de la fonction appelee, sauf a tapper dans les threads.
    gSoap gère très bien (et de façon simple) les threads, donc ce n'est pas vraiment un problème.

    En revanche, l'utilisation de gSoap rend plus difficile la maintenance, car à chaque modif de l'interface, il faut générer à nouveau le client/serveur et le recompiler.

    Corba n'est pas gratuit il me semble non?

  7. #7
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par r0d Voir le message
    gSoap gère très bien (et de façon simple) les threads, donc ce n'est pas vraiment un problème.
    Fondamentalement on cree un probleme en forcant une synchro non necessaire (pas toujours, mais si elle est necessaire, les threads n'arrangent rien) et apres on introduit les threads pour le masquer.

    Corba n'est pas gratuit il me semble non?
    http://docs.huihoo.com/corba/free_corba.html

    Aucune idee de l'utilisabilite pratique de ces libs.

  8. #8
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par white_tentacle Voir le message
    A part windows, pour les autres, je ne vois pas.
    Et sais-tu comment on fait? (pour faire du RPc en natif, en c++, sous Windows)

    Citation Envoyé par Jean-Marc.Bourguet Voir le message
    En passant, j'avais l'impression que c'etait passe de mode.
    Argh. Et quelles sont les alternatives?

  9. #9
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par r0d Voir le message
    Argh. Et quelles sont les alternatives?
    Aucune idee: ce n'est pas mon domaine. Mon impression est basee sur le fait que je n'entends plus RPC des qu'on parle de reseau, comme ce le fut a un moment donne.

  10. #10
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Citation Envoyé par r0d Voir le message
    Et sais-tu comment on fait? (pour faire du RPc en natif, en c++, sous Windows)
    MSDN est ton ami : Remote Procedure Call

  11. #11
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par white_tentacle Voir le message
    [...]peut-être faudrait-il mieux que tu détailles un peu plus ton environnement si tu ne veux te retrouver avec une bibliothèque à lire .
    En fait c'est simple: je vais avoir tout un tas de serveurs (je ne sais pas exactement combien, disons entre 20 et 100), sur lesquels seront installés plusieurs applications A1, A2, ..., An. Je voudrais avoir un point d'entrée, un web service gSoap, qui reçoit des pétitions, les dispatche aux serveurs, et retourne le résultat sous forme de chaine de caractères.

    Et en fait, je voudrais éviter de faire un client/serveur SOAP pour chaque application An. Je ne parviens pas à trouver des infos, mais il me semblait qu'il existait des solutions plus simples.

Discussions similaires

  1. Quelques question sur Win 32 Appli
    Par lvdnono dans le forum Windows
    Réponses: 5
    Dernier message: 15/06/2004, 12h37
  2. [Débutant]Quelques questions de principe sur l'API win32
    Par silver_dragoon dans le forum Windows
    Réponses: 4
    Dernier message: 19/03/2004, 18h38
  3. [install]Install sous windows... quelques questions
    Par omega dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 26/02/2004, 09h50
  4. [MFC] Quelques questions de débutant...
    Par Sephi dans le forum MFC
    Réponses: 4
    Dernier message: 20/02/2004, 17h25
  5. Quelques questions sur le TWebBrowser...
    Par CorO dans le forum Web & réseau
    Réponses: 3
    Dernier message: 17/01/2003, 21h23

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