summaryrefslogtreecommitdiff
path: root/doc/book/src/Introduction.xml
blob: 8f92c207cf2d4e4b07ace8f2e27240d1107bbb09 (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<?xml version="1.0" encoding="utf-8"?>
<!--
 
 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>

<title>Apache Qpid: Open Source AMQP Messaging</title>

<para>Enterprise Messaging systems let programs communicate by exchanging messages, much as people communicate by exchanging email. Unlike email, enterprise messaging systems provide guaranteed delivery, speed, security, and freedom from spam. Until recently, there was no open standard for Enterprise Messaging systems, so programmers either wrote their own, or used expensive proprietary systems.</para>

<para>AMQP Advanced Message Queuing Protocol is the first open standard for Enterprise Messaging. It is designed to support messaging for just about any distributed or business application. Routing can be configured flexibly, easily supporting common messaging paradigms like point-to-point, fanout, publish-subscribe, and request-response.</para>

<para>Apache Qpid implements the latest AMQP specification, providing transaction management, queuing, distribution, security, management, clustering, federation and heterogeneous multi-platform support and a lot more. And Apache Qpid is extremely fast. Apache Qpid <ulink url="### FIX ME ###">aims to be 100% AMQP Compliant</ulink>.</para>

<section>
<title>AMQP Messaging Brokers</title>

<para>Qpid provides two AMQP messaging brokers:</para>

<itemizedlist>
   <listitem><para>Implemented in C++ - high performance, low latency, and RDMA support.</para></listitem>
   <listitem><para>Implemented in Java - Fully JMS compliant, runs on any Java platform.</para></listitem>
</itemizedlist>

<para>Both AMQP messaging brokers support clients in multiple languages, as long as the messaging client and the messaging broker use the same version of AMQP. See <ulink url="### FIX ME ###">Download</ulink> to see which messaging clients work with each broker.</para>

</section>

<section>
<title>AMQP Client APIs: C++, Java, JMS, Ruby, Python, and C#</title>

<para>Qpid provides AMQP Client APIs for the following languages:</para>

<itemizedlist>
   <listitem><para>C++</para></listitem>
   <listitem><para>Java, fully conformant with JMS 1.1</para></listitem>
   <listitem><para>C# .NET, 0-10 using WCF</para></listitem>
   <listitem><para>Ruby</para></listitem>
   <listitem><para>Python</para></listitem>
</itemizedlist>

</section>

<section>
<title>Operating Systems and Platforms:</title>

<para>The Qpid C++ broker runs on the following operating systems:</para>

<itemizedlist>
   <listitem><para>Linux systems</para></listitem>
   <listitem><para>Windows</para></listitem>
   <listitem><para>Solaris (coming soon)</para></listitem>
</itemizedlist>

<para>The Qpid Java broker runs on:</para>

<itemizedlist>
   <listitem><para>Any Java platform</para></listitem>
</itemizedlist>

<para>Qpid clients can be run on the following operating systems and platforms:</para>

<itemizedlist>
   <listitem><para>Java:</para>
       <itemizedlist>
         <listitem><para>any platform, production proven on Windows, Linux, Solaris</para></listitem>
       </itemizedlist>
   </listitem>


   <listitem><para>C++:</para>
    <itemizedlist>
         <listitem><para>Linux</para></listitem>
         <listitem><para>Windows</para></listitem>
         <listitem><para>Solaris (coming soon)</para></listitem>
    </itemizedlist>
   </listitem>

   <listitem><para>C#</para>
     <itemizedlist>
       <listitem><para>.NET</para></listitem>
     </itemizedlist>
   </listitem>

</itemizedlist>

</section>
</chapter>