COM/CORBA/DCOP (was: Hello people. I have some questions)
phr-n2001 at nightsong.com
Mon Sep 3 20:32:32 CEST 2001
"Alex Martelli" <aleax at aleax.it> writes:
> > I don't know why people would consider CORBA too heavyweight for
> > connecting desktop apps -- the few performance comparisons between COM
> > and CORBA I have seen show CORBA to be as fast or faster than COM.
> For *in-process* interaction?! There's something askew here... I
> did the measurements myself back around 1994/1995, under Windows/NT,
> using COM (in-process and out-of-process) and Iona's Orbix, which
> Iona claimed was the fastest ORB for NT, and the difference in
> terms of performance overhead was *at least* an order of magnitude
> in favour of COM (using C to program "toy"-level servers and
> clients, instrumented for measuring communication overhead, and
> striving to simulate the kinds of loads our own applications would
> place on a componentization infrastructure). Have things changed
> so drastically since then?
As I remember, there are two ways to use COM in-process. One is to
use the regular dispatch method which does a dictionary lookup. The
other way is to use a static index to get to the method. The second
way requires knowing the index, but the method invocation should end
up the same as a C++ method invocation, i.e. just a function call
through a dispatch vector. I don't see how interacting with a CORBA
ORB can be nearly that fast. However, the dispatch method might end
up being pretty slow.
Note, my memory of COM is hazy and I've never programmed CORBA.
More information about the Python-list