Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > by-pkgid > 965e33040dd61030a94f0eb89877aee8 > files > 7191

howto-html-en-20080722-2mdv2010.1.noarch.rpm

<HTML
><HEAD
><TITLE
>XML-RPC vs. Other Protocols</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
"><LINK
REL="HOME"
TITLE="XML-RPC HOWTO"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="What is XML-RPC?"
HREF="xmlrpc-howto-intro.html"><LINK
REL="NEXT"
TITLE="Common XML-RPC Interfaces"
HREF="xmlrpc-howto-interfaces.html"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>XML-RPC HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="xmlrpc-howto-intro.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="xmlrpc-howto-interfaces.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="section"
><H1
CLASS="section"
><A
NAME="xmlrpc-howto-competition"
>3. XML-RPC vs. Other Protocols</A
></H1
><P
>XML-RPC is not the only way to make remote procedure calls. Other
    popular protocols include CORBA, DCOM and SOAP. Each of these protocols
    has advantages and disadvantages.</P
><P
>The opinions in the section are obviously biased; please take
    them with a grain of salt.</P
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="xmlrpc-howto-corba"
>3.1. XML-RPC vs. CORBA</A
></H2
><P
><A
HREF="http://www.corba.org/"
TARGET="_top"
>CORBA</A
> is a popular
      protocol for writing distributed, object-oriented applications. It's
      typically used in multi-tier enterprise applications. Recently, it's
      also been adopted by the <A
HREF="http://www.gnome.org/"
TARGET="_top"
>Gnome</A
> project for
      interapplication communication.</P
><P
>CORBA is well-supported by many vendors and several free
      software projects. CORBA works well with Java and C++, and is
      available for many other languages. CORBA also provides an excellent
      <I
CLASS="glossterm"
>interface definition language</I
> (IDL), allowing
      you to define readable, object-oriented APIs.</P
><P
>Unfortunately, CORBA is very complex. It has a steep
      learning curve, requires significant effort to implement, and
      requires fairly sophisticated clients. It's better-suited to
      enterprise and desktop applications than it is to distributed web
      applications.</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="xmlrpc-howto-dcom"
>3.2. XML-RPC vs. DCOM</A
></H2
><P
><A
HREF="http://www.microsoft.com/com/tech/DCOM.asp"
TARGET="_top"
>DCOM</A
> is
      Microsoft's answer to CORBA. It's great if you're already using COM
      components, and you don't need to talk to non-Microsoft
      systems. Otherwise, it won't help you very much.</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="xmlrpc-howto-soap"
>3.3. XML-RPC vs. SOAP</A
></H2
><P
><A
HREF="http://www.w3.org/TR/SOAP/"
TARGET="_top"
>SOAP</A
> is very
      similar to XML-RPC. It, too, works by marshaling procedure calls
      over HTTP as XML documents. Unfortunately, SOAP appears to be
      suffering from specification creep.</P
><P
>SOAP was originally created as a collaboration between
      UserLand, DevelopMentor and Microsoft. The initial public release was
      basically XML-RPC with namespaces and longer element names. Since
      then, however, SOAP has been turned over a W3C working group.</P
><P
>Unfortunately, the working group has been adding a laundry-list
      of strange features to SOAP. As of the current writing, SOAP supports
      XML Schemas, enumerations, strange hybrids of structs and arrays, and
      custom types. At the same time, several aspects of SOAP are
      implementation defined.</P
><P
>Basically, if you like XML-RPC, but wish the protocol had more
      features, check out SOAP. :-)</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="xmlrpc-howto-intro.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="xmlrpc-howto-interfaces.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>What is XML-RPC?</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Common XML-RPC Interfaces</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>