[omniORB] Re: remote object references

Ji-Yong D. Chung virtualcyber@erols.com
Tue, 14 Mar 2000 23:46:38 -0500


This is a multi-part message in MIME format.

------=_NextPart_000_0007_01BF8E0F.8A632430
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Jim Moe wrote:

>>  If I create a CORBA object on the first machine, and if I want to =
pass=20
>> that object's remote reference to the second, can I make the first =
machine=20
>> obtain it, and pass it to the second host? In other words, if I =
create a=20
>> local corba object and obtain its CORBA object reference (created on =
the=20
>> localhost), can I send it off to other hosts as valid object =
reference? Or=20
>> is the obtained reference only good on the original host?.=20
>>=20
>   This is what the COSNaming Service is for. The server on mach #1=20
>registers itself with COSNaming. The client on mach #2 queries =
COSNaming=20
>for the object reference of the object it desires.=20

    Thanks for your reply.

    While your solution probably would work, IMHO, it does not quite =
seem "right."

    Consider a more complex scenario:  say machine A dynamically created =
10 objects, and it wants the machine B to have all the references of =
those objects.  It just would not be efficient for machine A to transmit =
the names of the 10 objects to the machine B, so that machine B can then =
query the COSNaming Service 10 times (the cost of each query is on the =
order of few milliseconds due to the network latency). =20

    It seems to me that once machine A has the object references (at the =
time of its CORBA object creations), it would be far more efficient to =
just pass the references directly to machine B (provided that machine A =
knows that server B should receive the object references).  Of course, I =
am assuming that Mr. Klimek is right; that is, it is legal to pass =
object references around in a distributed environment.

    But then again, I could be missing something ...

   =20



------=_NextPart_000_0007_01BF8E0F.8A632430
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.2314.1000" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT size=3D2>Jim Moe wrote:</FONT></DIV>
<DIV><BR><FONT size=3D2><EM>&gt;&gt;&nbsp; If I create a CORBA object on =
the first=20
machine, and if I want to pass <BR>&gt;&gt; that object's remote =
reference to=20
the second, can I make the first machine <BR>&gt;&gt; obtain it, and =
pass it to=20
the second host? In other words, if I create a <BR>&gt;&gt; local corba =
object=20
and obtain its CORBA object reference (created on the <BR>&gt;&gt; =
localhost),=20
can I send it off to other hosts as valid object reference? Or =
<BR>&gt;&gt; is=20
the obtained reference only good on the original host?. =
<BR></EM>&gt;&gt;=20
<BR>&gt;&nbsp;&nbsp; This is what the COSNaming Service is for. The =
server on=20
mach #1 <BR>&gt;registers itself with COSNaming. The client on mach #2 =
queries=20
COSNaming <BR>&gt;for the object reference of the object it desires.=20
</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; Thanks for your =
reply.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; While your solution&nbsp;probably =
would=20
work, IMHO, it does not quite seem "right."</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; Consider a more complex=20
scenario:&nbsp;&nbsp;say machine&nbsp;A dynamically created&nbsp;10 =
objects, and=20
it wants&nbsp;the machine B to have all the references of&nbsp;those=20
objects.&nbsp; It&nbsp;just would not be efficient&nbsp;for machine A to =

transmit the names of the 10 objects to the machine B,&nbsp;so that =
machine B=20
can&nbsp;then query the COSNaming Service&nbsp;10 times (the cost of =
each query=20
is on the order of few milliseconds due to the network=20
latency).&nbsp;&nbsp;</FONT></DIV>
<DIV><FONT size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; It seems to me that once machine =
A has the=20
object references (at the time of its CORBA object creations), it would =
be far=20
more efficient to&nbsp;just pass the references directly to&nbsp;machine =
B=20
(provided that&nbsp;machine A knows&nbsp;that server B&nbsp;should =
receive the=20
object references).&nbsp; Of course, I am assuming that Mr. Klimek is =
right;=20
that is, it is legal to pass object references around in a distributed=20
environment.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; But then again, I could be =
missing=20
something ...</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT size=3D2>&nbsp;&nbsp;&nbsp; </FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_0007_01BF8E0F.8A632430--