Reputation: 19384
What's the easiest way to get RPC in .NET? I see that there is .NET Remoting and WCF, and according to Wikipedia, WCF is the successor to .NET Remoting.
So far, I only tried the remoting stuff, which seems to be pretty simple -- I also didn't hit any problem with the application speed so far. Is .NET remoting really the best way to get RPC working, or should I look into WCF (as .NET remoting is going to be discontinued in favor of it?)? I only want communication with already known objects written in C#, so I don't need any of this XML/SOAP/etc. transport format stuff. The target application is meant to be distributed over a network, and communicate only with instances of itself. In this context, I simply want to connect to an object somewhere, without having to deal with protocol level issues.
Upvotes: 2
Views: 2118
Reputation: 273244
You can use WCF with binary formatting and TCP binding. If that (still) isn't fast enough you will have to look at custom (non standard) technologies. For communication on 1 machine you can use the IPC protocol (which is similar to or based on named pipes).
And indeed, Remoting is disappearing as a separate technique. It is being assimilated by WCF.
Upvotes: 3
Reputation: 11957
Once I've read a discussion somewhere, on CP I think, and someone was proving that WCF using pipes (which enables you to go IPC on the same machine only) is much faster then .Net Remoting, and when using tcp - it's a bit faster. I can't confirm it's true for all cases, but you can google for some benchmarks, I've seen few. In my opionion, if remoting gives you everything that you need, you can stick with it, at least for now :).
Upvotes: 2