Si ton client est derrière un NAT, la connexion se fait à son initiative. Si tu veux utiliser du SOAP (ou un truc de ce genre-là), une solution est d'avoir un client qui polle à intervalle régulier le serveur, qui maintient une file de tâches à faire exécuter au client.
Souci : c'est pas rapide dans les cas généraux. Tu peux pallier à ça en prévoyant :
- soit une fréquence de poll variable, ajustable selon des recommandations serveurs, si les tâches clientes sont longues (une communication asynchrone s'impose donc de toutes façons) ;
- soit que le client rappelle toujours le serveur tant que ce dernier ne lui a pas envoyé un message de fin de conversation, dans quel cas le client attend la période prédéfinie avant de recontacter le serveur.
Ca n'a certes rien à voir avec une connexion socket et des échanges rapides de données.
[^] # Re: Ca dépend ...
Posté par romain . En réponse au message RPC, SOAP, tout ça. Évalué à 3.
Souci : c'est pas rapide dans les cas généraux. Tu peux pallier à ça en prévoyant :
- soit une fréquence de poll variable, ajustable selon des recommandations serveurs, si les tâches clientes sont longues (une communication asynchrone s'impose donc de toutes façons) ;
- soit que le client rappelle toujours le serveur tant que ce dernier ne lui a pas envoyé un message de fin de conversation, dans quel cas le client attend la période prédéfinie avant de recontacter le serveur.
Ca n'a certes rien à voir avec une connexion socket et des échanges rapides de données.