summaryrefslogtreecommitdiff
path: root/qpid/doc/book/src/java-broker/Java-Broker-Concepts.xml
blob: 0ebf6124a0dc7ebe154beb94915c0513383d4fdd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?xml version="1.0"?>
<!--

 Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.  See the NOTICE file
 distributed with this work for additional information
 regarding copyright ownership.  The ASF licenses this file
 to you under the Apache License, Version 2.0 (the
 "License"); you may not use this file except in compliance
 with the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing,
 software distributed under the License is distributed on an
 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.

-->

<chapter  id="Java-Broker-Concepts">
    <title>Concepts</title>

    <section id="Java-Broker-Concepts-Broker">
        <title>Broker</title>
        <para>The Qpid Broker can be defined as a collection of <emphasis>Virtual Hosts</emphasis> (independent containers of <emphasis>Queues</emphasis>,
        <emphasis>Exchanges</emphasis>, etc) sharing the same authentication model provided by the broker <emphasis>Authentication Providers</emphasis>
        and the transport model defined as <emphasis>Port</emphasis> configured objects. The authorization model is either provided by the broker
        <emphasis>Access Control Providers</emphasis> or <emphasis>Access Control List</emphasis> defined on the <emphasis>Virtual Hosts</emphasis>.
        The Broker also provides the management plugins to manage and configure Broker's and Virtual Hosts' configured objects.
        Additionally, <emphasis>Keystores</emphasis> and <emphasis>Truststores</emphasis> can be defined on the broker level to configure Port SSL transports.
        The <emphasis>Group Providers</emphasis> can be configured to use groups with <emphasis>ACL Providers</emphasis>.
        </para>
        <para>
        The following diagram depicts the Broker model:
        <figure>
            <title>Broker Model</title>
            <mediaobject>
              <imageobject>
                <imagedata fileref="images/Broker-Model.png" format="PNG" scalefit="1"/>
              </imageobject>
              <textobject>
                <phrase>Broker Model</phrase>
              </textobject>
            </mediaobject>
        </figure>
        </para>
    </section>

    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Virtual-Hosts.xml"/>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Exchanges.xml"/>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Queues.xml"/>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Ports.xml"/>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Authentication-Providers.xml"/>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Java-Broker-Concepts-Other-Services.xml"/>
</chapter>