Messagerie instantanée avec Java RMI [HELP]
Résolu
Bonjour tout le monde j'espère que vous allez bien ,
j'essaye d'implémenter une messagerie instantanée.
Ma question est:
Est ce possible d'implémenter une MI en utilisant java RMI, et est ce que le RMI ouvre un canal full duplex entre le client et le server (est ce temps réel) ou il faudra faire du polling pour voir si le client a reçu un nouveau message ?.
Merci pour votre aide.
j'essaye d'implémenter une messagerie instantanée.
Ma question est:
Est ce possible d'implémenter une MI en utilisant java RMI, et est ce que le RMI ouvre un canal full duplex entre le client et le server (est ce temps réel) ou il faudra faire du polling pour voir si le client a reçu un nouveau message ?.
Merci pour votre aide.
Configuration: Windows / Chrome 96.0.4664.45
2 réponses
-
ModérateurBonjour,
RMI permet d'appeler du code distant : tu fournis le nom de la classe, la méthode et les paramètres, ça te renvoie un résultat. C'est en temps réel, mais strictement à sens unique.
Remarque : RMI est un vieux protocole qui n'a plus trop de raison d'être aujourd'hui, il vaudrait mieux faire du REST (avec JAX-RS en Java)-
-
Modérateur@ghostman15418Le RMI c'est un protocole, les sockets c'est une technologie, il se trouve que pour que ça fonctionne le RMI va utiliser les sockets, mais uniquement dans un sens (un POST en HTTP).
https://docs.oracle.com/en/java/javase/17/docs/specs/rmi/protocol.html
NB. Il existe un mode multiplexé pour que le client et le serveur puisse s'envoyer plusieurs requêtes avec la même connexion, mais ça ne change rien au sens de la communication. Tu appelles une méthode, ce n'est pas elle qui t'appelle.
-
-
Merci beacoup, ce qui veut dire si je veux faire une messagerie instantanée avec rmi je dois faire une boucle qui appelle une methode qui renvoie les messages du client, ce qui s'appelle faire du pooling (comme ce qui etait fait sur le web avant l'arrivé de websocket).
-
-
@KXd'accord, je vous remercie énormément pour votre précieuse aide.
-