Question

We are developing an web application which will talk to a Windows service (both will be developed in .Net). These calls could be simple CRUD operations or Subscription operations. Could you please different alternate to set communication between these two applications. I can think of following options. Please suggest me best among them.

a) We can expose WCF service end point. For subscriptions, we can use duplex WCF.

b) We can use some kind of broker queue (like RabbitMQ). RabbitMQ provides us facility to add callbacks/subscription.

c) Use socket programming to set communication between two.

It would be great if you can let me know in which scenario which option should be preferred over other.

Thanks In Advance

Était-ce utile?

La solution

(a) and (b) options are seems better.In fact you can use RabbitMQ binding in WCF.It seems your communication data is central DB . RabbitMQ is using AMQP protocol while WCF's Duplex binding is using MSMQ. RabbitMQ is from third party but stable. WCF has a good history of stability with some new concept of WCF LOB Adapters. Both are scalable and efficient.Both are supporting publisher/subscriber pattern.

But If you are writing first time WCF duplex then it can very complex in development & deployement, As WCF is more about configuration. I would like to suggest you SignalR which is built on top of winsock and related communication channels.SignalR can be deployed on ASP.Net & MVC Site. Currently I am building a massive communication system using SignalR.

Just look at ZeroMQ .It has better performance than RabbitMQ.Use NetMQ a 100% C# Port of ZeroMQ.

Hope it helps

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top