[Pipet Devel] more fun with flowcharts

J.W. Bizzaro bizzaro at geoserve.net
Fri Feb 25 12:00:37 EST 2000


Okay, one more try.  Back-ends (hosted applications) are on 2 different
computers:

                 +-------+
                 | Front |
                 +-------+
                    | /|\
                    |  |
              LOCAL |  | LOCAL
                    |  |
                   \|/ |
                 +--------+/_________________
                 | Middle |\                |
                 +--------+                 |
                    |                       |
                    |                       | INTERNET
           INTERNET |                       |
                    |                       |
                   \|/                      |
                 +--------+           +--------+     LOCAL
                 | Middle |           | Middle |/_____________
                 +--------+           +--------+\            |
                   /                                         |
            LOCAL /                                          |
                 /                                           |
       +-----+/_/                                  +-----+___|
       |     |\                                    |     |
       | Back|____________________________________\|Back |
       |     |           ANY PROTOCOL             /|     |
       +-----+                                     +-----+

Backs appearing on the same computer as the front does, or other backs do, will
always mean the middle loops back to itself.  So,

    <execute>
        <locus uri="ltp://localhost.com/public/container/ls.wrap"/>

makes the middle call itself through an Internet socket.  And,

        <pipe uri="ltp://localhost.com/public/container/list.wrap">

does too.  But,

        <pipe uri="ltp://remotehost.com/public/container/list.wrap">

tells the back to pipe its data to another back.

    </execute>

In any case, the local computer's URI should be kept as metadata so that the
data knows how to get back home.

Here is the same flowchart showing 2-way communcation at all points:

                 +-------+
                 | Front |
                 +-------+
                    | /|\
                    |  |
              LOCAL |  | LOCAL
                    |  |
                   \|/ |
                 +--------+/_________________
                 | Middle |\______________  |
                 +--------+              |  |
                    | /|\       INTERNET |  |
                    |  |                 |  | INTERNET
           INTERNET |  | INTERNET        |  |
                    |  |                 |  |
                   \|/ |                \|/ |
       LOCAL     +--------+           +--------+     LOCAL
   _____________\| Middle |           | Middle |/_____________
   |            /+--------+           +--------+\            |
   |               /                         \               |
   |        LOCAL /                           \ LOCAL        |
   |             /                             \             |
   |___+-----+/_/                               \_\+-----+___|
       |     |\                                   /|     |
       | Back|____________________________________\|Back |
       |     |           ANY PROTOCOL             /|     |
       +-----+                                     +-----+

So, does this mean a remote middle is 'contacted' 2 different ways by the local
middle (data comes directly from backend, but the local middle tells the remote
middle that the data is coming)?

And what if the data flows onward to a 3rd back-end?  I don't have room to draw
that :-)

Cheers.
Jeff
-- 
                      +----------------------------------+
                      |           J.W. Bizzaro           |
                      |                                  |
                      | http://bioinformatics.org/~jeff/ |
                      |                                  |
                      |        BIOINFORMATICS.ORG        |
                      |           The Open Lab           |
                      |                                  |
                      |    http://bioinformatics.org/    |
                      +----------------------------------+




More information about the Pipet-Devel mailing list