Supponiamo di avere due nodi che forniscono entrambi il medesimo servizio (un servizio analogo a questo:
http://msdn.microsoft.com/en-us/library/ms731064.aspx) utilizzando il binding NetTcpBinding. Supponiamo inoltre che ci siano anche due metodi
Connect e
Disconnect: il primo permette di iniziare una nuova sessione per utilizzare il servizio, mentre il secondo serve per chiudere la sessione.
[OperationContract(IsInitiating = true, IsTerminating = false)]
void Connect();
...
[OperationContract(IsInitiating = false, IsTerminating = true)]
void Disconnect();
Vorrei che i due nodi utilizzino lo stesso servizio l'un l'altro: il primo nodo utilizza il servizio del secondo (e riceve le risposte da quest'ultimo tramite callback), e analogamente il secondo nodo utilizza il servizio fornito dal primo nodo... Instaurando questa doppia comunicazione, entrambi i nodi sono client e server allo stesso tempo.
Purtroppo, però, vengono create instaurate 2 connessioni TCP...
Esiste un modo per avere un unica sessione (e quindi un'unica connessione TCP) tra i due nodi e permettere di usare il servizio in entrambi i sensi?
Grazie per eventuali consigli!
Modificato da enzom83 il 24 novembre 2011 22.27 -