[Mono-devel-list] New 'published' keyword
Miguel de Icaza
miguel at ximian.com
Tue Apr 20 19:37:37 EDT 2004
> A keyword or an attribute are not sufficient. You would need to know
> which object instance to use, and you need a way to invoke the method
> remotely. A lot of issues, for which we already have an answer: .NET
> Remoting. :-)
I wanted to comment on this ;-)
I come from a CORBA background where the control of how exactly is a
method invoked on an object is very mature. I was quite surprised to
see that Remoting did take a very simplistic approach to this problem
(singletons, or object-based).
In CORBA the way requests are dispatched to objects is done though a
thing called the `Portable Object Adapter' or POA. The defaults for
the POA are very similar to what you see in Remoting, but the POA was
designed to grow, so it has support for allowing the user to plug its
own activators and deactivators for objects as well as various policies
for handling the requests.
You can for instance create lightweight objects: things that appear to
exist, but do not really exist. It is possible to give the user the
illusion that millions of objects exist on the server, but those are
either built/tear-down dynamically or they are handled with special
The other day I had a realization.
Microsoft's Indigo is an attempt to fix the above problem (bringing
CORBA-like activation and handling) and the final realization that RPC
encoding in XML is more expensive than a binary serialization.
More information about the Mono-devel-list