4.0 / WCF: the best approach for a bidirectional message bus?

Just a technology update, now .NET 4.0 is missing.

I am writing an application that communicates with the server through what is basically the message bus (instead of method calls). This is based on the internal architecture of the application (which is multithreaded, sends messages around).

There is a limited number of messages for moving from client to server, which is much more from server to client. Most of them can be processed through a separate specialized mechanism, but in the end we talk about maybe 10-100 small messages per second going from server to client.

The client must work in the "Internet environment". This means that home end users behind standard NAT devices (ie Typical DSL routers) cannot be considered a firewall protected and thus an “open” network.

I want to have as little latency as possible and as little information as possible for communication.

What is the technologically best way to handle message bus callbacks? I have no problem with a regular call to the server to deliver messages if something needs to be sent ... ... but what are my options for processing messages from the server to the client?

  • Does WsDualHttp really work? Especially in a NAT script?

: - , , , . - , messags , , . , WCF, ( , WCF / // WCF).

+3
3

NetTcpBinding, http, .

, , .

+1

Windows Azure Service Bus. . :

WCF, 4.0,

0

Windows AppFabric, - . WCF WF , WCF WAS. , . , p2p . Windows Azure ( Azure Service Bus).

Regarding the bindings above, both NetTcpBinding and WsDualHttp offer callbacks, but you get a lot of ws binding for your money, especially if it's a mixed programming environment and you need to smooth wsdl to make interop work. I also think that WsDual is easier to bypass routers, although I understand that I'm talking to friends that Windows AppFabric softens this with the new Relay Services (which I have not seen, and I think that they have now been renamed).

Hope this helps.

0
source

Source: https://habr.com/ru/post/1741917/


All Articles