Ayende @ Rahien

My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:


+972 52-548-6969

, @ Q c

Posts: 6,128 | Comments: 45,549

filter by tags archive

Why Remoting is so painful?

time to read 1 min | 185 words

Yes, I know, 2003 called and asked to get its distribution technology back. Nevertheless, remoting is an extremely useful tool, if you can make several assumptions about the way that you are going to use it.

In my case, I am assuming inter process, local machine configuration, with high expectation of reliability from both ends. Considering that I also need low latency, it seems like an appropriate solution indeed. I was pretty happy about this, until all my integration tests start to break.

After a while, I managed to figure out that the root cause for that is this error: Because of security restrictions, the type XYZ cannot be accessed.

Now, it worked, and it worked for a long time. What the hell is going on?

After thinking about this for a while, I realized that the major thing that changed was that I am now signing my assemblies. And that caused all hell to break lose. I managed to find this post with the solution, but I am still not happy. I really dislike things that can just go and break on me.


Frank Quednau

Woa, in which case you dislike every single piece of...anything?

You'll have to stick to certain elementary particles. The electron is deemed quite stable and doesn't seem to have any motivation to just break.

Neil Mosafi

Urgh! Why not WCF with named pipes or something?

The Other Steve

Doesn't WCF have better support for remoting? Especially locally?


Frank: electrons have a catastrophic failure mode in the presence of positrons.

Frank Quednau

Chris, you're right, I forgot.

Sorry Ayende. Let's make this an...observation then: For every thing in our reality there is some other thing that will make the first thing break.


The implementation of code-level security in .Net is like black magic to me, and my brain is totally resistant to it. I don't know anyone using it for any purpose, even no one who can tell where it could be sensibly used. The only option - give your code all possible permissions and pray it works.

And .Net remoting - very nice at the beginning and ready to bite you when your application grows more complicated. Maybe WCF is better, but I'm afraid it's just a bit more painful than remoting


So... does that mean we can expect Rhino.Remoting soon? What interface would you use? Erlang-style message passing or RPC-style function calls.


I think next version of C# will look like javascript and we'll use JSON for remoting. Microsoft must only realize that they need to get rid of compiler, static typing, generics, WCF/WF and all that disturbing sh*t and concentrate on making the framework easy to use.

Comment preview

Comments have been closed on this topic.


  1. The worker pattern - 3 days from now

There are posts all the way to May 30, 2016


  1. The design of RavenDB 4.0 (14):
    26 May 2016 - The client side
  2. RavenDB 3.5 whirl wind tour (14):
    25 May 2016 - Got anything to declare, ya smuggler?
  3. Tasks for the new comer (2):
    15 Apr 2016 - Quartz.NET with RavenDB
  4. Code through the looking glass (5):
    18 Mar 2016 - And a linear search to rule them
  5. Find the bug (8):
    29 Feb 2016 - When you can't rely on your own identity
View all series


Main feed Feed Stats
Comments feed   Comments Feed Stats