~rdoering/ubuntu/karmic/erlang/fix-535090

« back to all changes in this revision

Viewing changes to lib/orber/doc/src/ch_orber_kernel.xml

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-02-15 16:42:52 UTC
  • mfrom: (3.1.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090215164252-q5x4rcf8a5pbesb1
Tags: 1:12.b.5-dfsg-2
Upload to unstable after lenny is released.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="latin1" ?>
 
2
<!DOCTYPE chapter SYSTEM "chapter.dtd">
 
3
 
 
4
<chapter>
 
5
  <header>
 
6
    <copyright>
 
7
      <year>1999</year>
 
8
      <year>2007</year>
 
9
      <holder>Ericsson AB, All Rights Reserved</holder>
 
10
    </copyright>
 
11
    <legalnotice>
 
12
  The contents of this file are subject to the Erlang Public License,
 
13
  Version 1.1, (the "License"); you may not use this file except in
 
14
  compliance with the License. You should have received a copy of the
 
15
  Erlang Public License along with this software. If not, it can be
 
16
  retrieved online at http://www.erlang.org/.
 
17
 
 
18
  Software distributed under the License is distributed on an "AS IS"
 
19
  basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
20
  the License for the specific language governing rights and limitations
 
21
  under the License.
 
22
 
 
23
  The Initial Developer of the Original Code is Ericsson AB.
 
24
    </legalnotice>
 
25
 
 
26
    <title>The Orber Application</title>
 
27
    <prepared></prepared>
 
28
    <docno></docno>
 
29
    <date>1998-10-05</date>
 
30
    <rev></rev>
 
31
  </header>
 
32
 
 
33
  <section>
 
34
    <title>ORB Kernel and IIOP </title>
 
35
    <p>This chapter gives a brief overview of the ORB and its relation
 
36
      to objects in a distributed environment and the usage of Domains
 
37
      in Orber.
 
38
      Also Internet-Inter ORB Protocol (<term id="IIOP"><termdef>Internet-Inter ORB Protocol</termdef></term>) is discussed and how this
 
39
      protocol facilitates communication between ORBs to
 
40
      allow the accessory of persistent server objects in Erlang. </p>
 
41
  </section>
 
42
 
 
43
  <section>
 
44
    <title>The Object Request Broker (ORB)</title>
 
45
    <p>An ORB kernel can be best described as the middle-ware, which
 
46
      creates relationships between clients and servers, but is
 
47
      defined by its interfaces.  This allows transparency for the
 
48
      user, as they do not have to be aware of where the requested
 
49
      object is located. Thus, the programmer can work with any other
 
50
      platform provided that an IDL mapping and interfaces exist. 
 
51
      </p>
 
52
    <p>The IDL mapping which is described in a later chapter is the
 
53
      translator between other platforms, and languages. However, it
 
54
      is the ORB, which provides  objects with a structure by which
 
55
      they can communicate with other objects.
 
56
      </p>
 
57
    <p>ORBs intercept and direct messages from one object, pass this
 
58
      message using IIOP to another ORB, which then directs the
 
59
      message to the indicated object.
 
60
      </p>
 
61
    <p>An ORB is the base on which interfaces, communication stubs
 
62
      and mapping can be built to enable communication between
 
63
      objects. Orber uses <term id="domains"><termdef>A domain allows a more efficient communication protocol to be used between objects not on the same node without the need of an ORB</termdef></term>to group objects of different nodes
 
64
      </p>
 
65
    <p>How the ORB provides communication is shown very simply in figure 1 below: </p>
 
66
    <marker id="theORB"></marker>
 
67
    <image file="theORB">
 
68
      <icaption>
 
69
Figure 1: How the Object Request Broker works.</icaption>
 
70
    </image>
 
71
    <p>The domain in Orber  gives an extra aspect to the distributed object
 
72
      environment as each domain has one ORB, but it is distributed over
 
73
      a number of object in different nodes. The domain binds objects on
 
74
      nodes  more closely than distributed objects in different domains.  The
 
75
      advantage of a domain is that a faster communication  exists between
 
76
      nodes and objects of the same domain. An internal communication protocol
 
77
      (other than IIOP)  allows a
 
78
      more efficient communication between these objects. </p>
 
79
    <note>
 
80
      <p>Unlike objects, domains can only have one name
 
81
        so that no communication ambiguities exist between  domains.</p>
 
82
    </note>
 
83
  </section>
 
84
 
 
85
  <section>
 
86
    <title>Internet Inter-Object Protocol (IIOP)</title>
 
87
    <p>IIOP is a communication protocol developed by the OMG to
 
88
      facilitate communication in a distributed object-oriented
 
89
      environment.
 
90
      </p>
 
91
    <p>Figure 2 below demonstrates how IIOP works between objects:</p>
 
92
    <marker id="iiop"></marker>
 
93
    <image file="iiop">
 
94
      <icaption>
 
95
Figure 2: IIOP communication between domains and objects.</icaption>
 
96
    </image>
 
97
    <note>
 
98
      <p>Within the Orber domains the objects communicate without
 
99
        using the IIOP.  However,  the user is unaware of the difference in protocols, as this difference is not visible. </p>
 
100
    </note>
 
101
  </section>
 
102
</chapter>
 
103