18.04.2013 Views

B2B Integration : A Practical Guide to Collaborative E-commerce

B2B Integration : A Practical Guide to Collaborative E-commerce

B2B Integration : A Practical Guide to Collaborative E-commerce

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Transport and semantics<br />

<strong>Integration</strong> Patterns 87<br />

The RPC pro<strong>to</strong>col is completely independent of the transport pro<strong>to</strong>cols,<br />

i.e., the client can invoke RPC calls on the server irrespective of the<br />

transport pro<strong>to</strong>col on which the RPC service runs. It deals only with the<br />

specifications and interpretations of messages and does not take in<strong>to</strong><br />

account the manner and way in which the messages are exchanged<br />

between the client and the server applications. Based on this<br />

independence from transport pro<strong>to</strong>cols, RPC pro<strong>to</strong>col does not enforce<br />

any kind of semantics <strong>to</strong> the invocation or execution of a remote<br />

procedure. The semantics are explicitly declared by the transport pro<strong>to</strong>col.<br />

Thus, client and server applications have <strong>to</strong> be aware of the transport<br />

pro<strong>to</strong>col underneath RPC, as RPC service can run on a reliable pro<strong>to</strong>col<br />

(such as TCP/IP) or an unreliable (UDP) pro<strong>to</strong>col.<br />

Benefits of RPCs<br />

The biggest advantage of RPCs is their relative simplicity. Though the<br />

procedure is executed on a remote machine, it appears <strong>to</strong> the developer<br />

that it has been executed locally. Developers are removed from the<br />

complexities, which exist in other middleware solutions, most notably,<br />

distributed object models.<br />

Unlike the wild-west approach <strong>to</strong> APIs, comprehensive industry<br />

standards have been developed for RPCs. The most notable is the<br />

Distributed Computing Environment (DCE) standard created by the<br />

Open Software Foundation (OSF) in the 1980s. DCE is an industrystandard,<br />

vendor-neutral set of distributed computing technologies. The<br />

DCE standard for RPCs provides a complete distributed computing<br />

environment infrastructure including a security service <strong>to</strong> protect and<br />

control access <strong>to</strong> data, name services that make it easy <strong>to</strong> find distributed<br />

resources and a highly scalable model for organizing widely scattered<br />

users, services and data.<br />

Limitations of RPCs<br />

Though incredibly popular during the 80s and early 90s, RPCs have<br />

lost favor as a middleware solution <strong>to</strong> other technologies, such as

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!