~certify-web-dev/twisted/certify-staging

« back to all changes in this revision

Viewing changes to doc/howto/pb.html

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2010-01-02 19:38:17 UTC
  • mfrom: (2.2.4 sid)
  • Revision ID: james.westby@ubuntu.com-20100102193817-jphp464ppwh7dulg
Tags: 9.0.0-1
* python-twisted: Depend on the python-twisted-* 9.0 packages.
* python-twisted: Depend on python-zope.interface only. Closes: #557781.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version="1.0"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><title>Twisted Documentation: Overview of Twisted Spread</title><link href="stylesheet.css" type="text/css" rel="stylesheet" /></head><body bgcolor="white"><h1 class="title">Overview of Twisted Spread</h1><div class="toc"><ol><li><a href="#auto0">Rationale</a></li></ol></div><div class="content"><span></span><p> Perspective Broker (affectionately known as <q>PB</q>) is an
 
1
<?xml version="1.0" encoding="utf-8"?>
 
2
<!DOCTYPE html
 
3
  PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN'
 
4
  'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
 
5
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
 
6
  <head>
 
7
<title>Twisted Documentation: Overview of Twisted Spread</title>
 
8
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
 
9
  </head>
 
10
 
 
11
  <body bgcolor="white">
 
12
    <h1 class="title">Overview of Twisted Spread</h1>
 
13
    <div class="toc"><ol><li><a href="#auto0">Rationale</a></li></ol></div>
 
14
    <div class="content">
 
15
<span/>
 
16
 
 
17
<p> Perspective Broker (affectionately known as <q>PB</q>) is an
3
18
asynchronous, symmetric<a href="#footnote-1" title="There is a negotiation phase for banana with particular roles for listener and initiator, so it's not completely symmetric, but after the connection is fully established, the protocol is completely symmetrical."><super>1</super></a> network protocol for secure,
4
19
remote method calls and transferring of objects. PB is <q>translucent, not
5
20
transparent</q>, meaning that it is very visible and obvious to see the
6
21
difference between local method calls and potentially remote method calls,
7
22
but remote method calls are still extremely convenient to make, and it is
8
23
easy to emulate them to have objects which work both locally and
9
 
remotely.</p><p>PB supports user-defined serialized data in return values, which can be
 
24
remotely.</p>
 
25
 
 
26
<p>PB supports user-defined serialized data in return values, which can be
10
27
either copied each time the value is returned, or <q>cached</q>: only copied
11
 
once and updated by notifications.</p><p>PB gets its name from the fact that access to objects is through a
 
28
once and updated by notifications.</p>
 
29
 
 
30
<p>PB gets its name from the fact that access to objects is through a
12
31
<q>perspective</q>. This means that when you are responding to a remote
13
 
method call, you can establish who is making the call.</p><h2>Rationale<a name="auto0"></a></h2><p>No other currently existing protocols have all the properties of PB at the
 
32
method call, you can establish who is making the call.</p>
 
33
 
 
34
<h2>Rationale<a name="auto0"/></h2>
 
35
 
 
36
<p>No other currently existing protocols have all the properties of PB at the
14
37
same time. The particularly interesting combination of attributes, though, is
15
38
that PB is flexible and lightweight, allowing for rapid development, while
16
39
still powerful enough to do two-way method calls and user-defined data
17
 
types.</p><p>It is important to have these attributes in order to allow for a protocol
 
40
types.</p>
 
41
 
 
42
<p>It is important to have these attributes in order to allow for a protocol
18
43
which is extensible. One of the facets of this flexibility is that PB can
19
44
integrate an arbitrary number of services could be aggregated over a single
20
45
connection, as well as publish and call new methods on existing objects
21
 
without restarting the server or client.</p><h2>Footnotes</h2><ol><li><a name="footnote-1"><span xmlns="http://www.w3.org/1999/xhtml" class="footnote">There is a negotiation phase
 
46
without restarting the server or client.</p>
 
47
 
 
48
<h2>Footnotes</h2><ol><li><a name="footnote-1"><span class="footnote">There is a negotiation phase
22
49
for banana with particular roles for listener and initiator, so it's not
23
50
<em>completely</em> symmetric, but after the connection is fully established,
24
 
the protocol is completely symmetrical.</span></a></li></ol></div><p><a href="index.html">Index</a></p><span class="version">Version: 8.2.0</span></body></html>
 
 
b'\\ No newline at end of file'
 
51
the protocol is completely symmetrical.</span></a></li></ol></div>
 
52
 
 
53
    <p><a href="index.html">Index</a></p>
 
54
    <span class="version">Version: 9.0.0</span>
 
55
  </body>
 
56
</html>
 
 
b'\\ No newline at end of file'