Overview
Comment: | Added more detail to server/client flow |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | inmem-per-run-db-per-run-server |
Files: | files | file ages | folders |
SHA1: |
559228be4038adca98657934a1e4a018 |
User & Date: | matt on 2014-02-09 23:54:44 |
Other Links: | branch diff | manifest | tags |
Context
2014-02-13
| ||
16:51 | Added pdf and regenerated Closed-Leaf check-in: 6d98d0aa7d user: mrwellan tags: inmem-per-run-db-per-run-server | |
2014-02-10
| ||
19:56 | Re-re-factor server handling check-in: f68ed29f16 user: matt tags: re-re-factor-server | |
2014-02-09
| ||
23:54 | Added more detail to server/client flow check-in: 559228be40 user: matt tags: inmem-per-run-db-per-run-server | |
22:55 | Updated docs with proposed server spec check-in: 180fe4e32d user: matt tags: inmem-per-run-db-per-run-server | |
Changes
Modified docs/manual/server.dot from [aacdcc6c75] to [4efd80e71a].
1 2 3 4 | digraph G { subgraph cluster_0 { node [style=filled]; | > > > | | > > > | | | > > > | | | | | | | | > > > > | > | | > > > > > > | 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 | digraph G { // put client after server so server_start node is visible // subgraph cluster_0 { node [style=filled]; start_client -> lookup_server; lookup_server -> connect [label=found]; lookup_server -> "server_available?"; "server_available?" -> delay [label=yes]; "server_available?" -> client_start_server [label=no]; client_start_server -> delay; connect -> login; login -> read_write [label=success]; login -> "server_dead?" [label=fail]; read_write -> timeout -> "server_dead?"; read_write -> wrong_server -> delay; // read_write -> read_write; "server_dead?" -> remove_record [label="yes (too many tries)"]; remove_record -> lookup_server; "server_dead?" -> delay [label=no]; delay -> lookup_server; label = "client"; color=green; } subgraph cluster_1 { node [style=filled]; start_server -> "server_running?"; "server_running?" -> set_available [label="no"]; "server_running?" -> delay_2s [label="yes"]; delay_2s -> "still_running?"; "still_running?" -> ping_server [label=yes]; "still_running?" -> set_available [label=no]; ping_server -> exit [label=alive]; ping_server -> remove_server_record [label=dead]; remove_server_record -> set_available; set_available -> avail_delay [label="delay 3s"]; avail_delay -> "first_in_queue?"; "first_in_queue?" -> set_running [label=yes]; set_running -> handle_requests; "first_in_queue?" -> "server_running?" [label=no]; handle_requests -> start_shutdown [label="no traffic"]; handle_requests -> shutdown_request; start_shutdown -> shutdown_delay; shutdown_request -> shutdown_delay; shutdown_delay -> exit; label = "server"; color=brown; } client_start_server -> start_server; handle_requests -> read_write; read_write -> handle_requests; } |