mirror of
https://github.com/simplex-chat/simplexmq.git
synced 2026-03-30 18:35:59 +00:00
docs: update diagram
This commit is contained in:
@@ -5,8 +5,8 @@ digraph SMPServer {
|
||||
|
||||
subgraph clusterPersistence {
|
||||
label="persistence (STM)"
|
||||
msgQueues [shape=cylinder label="Message\nqueues\npersistence"]
|
||||
queueStore [shape=cylinder label="SMP connections\n(aka SMP queues)\npersistence"]
|
||||
msgQueues [shape=cylinder label="Message\nqueues"]
|
||||
queueStore [shape=cylinder label="SMP connections\n(aka SMP queues)"]
|
||||
}
|
||||
|
||||
subgraph clusterServer {
|
||||
@@ -41,7 +41,7 @@ digraph SMPServer {
|
||||
runClient -> {client receive send} [style=dashed label=race color=orange fontcolor=orange]
|
||||
server -> inq [label="END"]
|
||||
|
||||
subscriber [shape=hexagon color=orange label="subscriber\nthread\n(only sends\n1 msg atm)"]
|
||||
subscriber [shape=hexagon color=orange label="subscriber\nthread"]
|
||||
|
||||
inq [shape=rarrow label="receive\nTBQueue"]
|
||||
outq [shape=larrow label="send\nTBQueue"]
|
||||
@@ -49,7 +49,7 @@ digraph SMPServer {
|
||||
msgQueues -> subscriber [label="Message" color=green fontcolor=green]
|
||||
subscriber -> outq [label="MSG" color=blue fontcolor=blue constraint=false]
|
||||
client -> queueStore [dir=both]
|
||||
client -> subscriber [style=dashed label="1 fork\nper\nqueue" color=orange]
|
||||
client -> subscriber [style=dashed label="1 fork per\nSMP queue/\nconnection" color=orange]
|
||||
client -> msgQueues [dir="both" label="SEND,\nSUB,\nACK" color=green]
|
||||
client -> outq -> send -> cs [color=blue]
|
||||
client -> subscribedQ [label="(rId,\nClient)"]
|
||||
|
||||
@@ -4,280 +4,276 @@
|
||||
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
|
||||
-->
|
||||
<!-- Title: SMPServer Pages: 1 -->
|
||||
<svg width="910pt" height="751pt"
|
||||
viewBox="0.00 0.00 910.00 750.66" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 746.6609)">
|
||||
<svg width="889pt" height="689pt"
|
||||
viewBox="0.00 0.00 889.00 689.40" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 685.3999)">
|
||||
<title>SMPServer</title>
|
||||
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-746.6609 906,-746.6609 906,4 -4,4"/>
|
||||
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-685.3999 885,-685.3999 885,4 -4,4"/>
|
||||
<g id="clust1" class="cluster">
|
||||
<title>clusterPersistence</title>
|
||||
<polygon fill="none" stroke="#000000" points="680,-155.286 680,-261.536 894,-261.536 894,-155.286 680,-155.286"/>
|
||||
<text text-anchor="middle" x="787" y="-244.936" font-family="arial" font-size="14.00" fill="#000000">persistence (STM)</text>
|
||||
<polygon fill="none" stroke="#000000" points="671,-112.175 671,-200.275 873,-200.275 873,-112.175 671,-112.175"/>
|
||||
<text text-anchor="middle" x="772" y="-183.675" font-family="arial" font-size="14.00" fill="#000000">persistence (STM)</text>
|
||||
</g>
|
||||
<g id="clust2" class="cluster">
|
||||
<title>clusterServer</title>
|
||||
<polygon fill="none" stroke="#000000" points="8,-417.7109 8,-734.6609 314,-734.6609 314,-417.7109 8,-417.7109"/>
|
||||
<text text-anchor="middle" x="161" y="-718.0609" font-family="arial" font-size="14.00" fill="#000000">server threads</text>
|
||||
<polygon fill="none" stroke="#000000" points="8,-356.4499 8,-673.3999 314,-673.3999 314,-356.4499 8,-356.4499"/>
|
||||
<text text-anchor="middle" x="161" y="-656.7999" font-family="arial" font-size="14.00" fill="#000000">server threads</text>
|
||||
</g>
|
||||
<g id="clust3" class="cluster">
|
||||
<title>clusterThreads</title>
|
||||
<polygon fill="none" stroke="#000000" points="96,-425.7109 96,-497.8859 306,-497.8859 306,-425.7109 96,-425.7109"/>
|
||||
<polygon fill="none" stroke="#000000" points="96,-364.4499 96,-436.6249 306,-436.6249 306,-364.4499 96,-364.4499"/>
|
||||
</g>
|
||||
<g id="clust5" class="cluster">
|
||||
<title>clusterConnection</title>
|
||||
<polygon fill="none" stroke="#000000" points="322,-8 322,-618.6859 672,-618.6859 672,-8 322,-8"/>
|
||||
<text text-anchor="middle" x="497" y="-602.0859" font-family="arial" font-size="14.00" fill="#000000">1 group per client connection</text>
|
||||
<polygon fill="none" stroke="#000000" points="322,-8 322,-557.4249 663,-557.4249 663,-8 322,-8"/>
|
||||
<text text-anchor="middle" x="492.5" y="-540.8249" font-family="arial" font-size="14.00" fill="#000000">1 group per client connection</text>
|
||||
</g>
|
||||
<g id="clust6" class="cluster">
|
||||
<title>clusterThreads</title>
|
||||
<polygon fill="none" stroke="#000000" points="330,-315.536 330,-387.7109 621,-387.7109 621,-315.536 330,-315.536"/>
|
||||
<polygon fill="none" stroke="#000000" points="330,-254.275 330,-326.4499 621,-326.4499 621,-254.275 330,-254.275"/>
|
||||
</g>
|
||||
<!-- msgQueues -->
|
||||
<g id="node1" class="node">
|
||||
<title>msgQueues</title>
|
||||
<path fill="none" stroke="#000000" d="M886.2346,-222.9713C886.2346,-226.2772 869.9937,-228.9625 850,-228.9625 830.0063,-228.9625 813.7654,-226.2772 813.7654,-222.9713 813.7654,-222.9713 813.7654,-169.0506 813.7654,-169.0506 813.7654,-165.7448 830.0063,-163.0594 850,-163.0594 869.9937,-163.0594 886.2346,-165.7448 886.2346,-169.0506 886.2346,-169.0506 886.2346,-222.9713 886.2346,-222.9713"/>
|
||||
<path fill="none" stroke="#000000" d="M886.2346,-222.9713C886.2346,-219.6655 869.9937,-216.9802 850,-216.9802 830.0063,-216.9802 813.7654,-219.6655 813.7654,-222.9713"/>
|
||||
<text text-anchor="middle" x="850" y="-205.911" font-family="arial" font-size="11.00" fill="#000000">Message</text>
|
||||
<text text-anchor="middle" x="850" y="-192.711" font-family="arial" font-size="11.00" fill="#000000">queues</text>
|
||||
<text text-anchor="middle" x="850" y="-179.511" font-family="arial" font-size="11.00" fill="#000000">persistence</text>
|
||||
<path fill="none" stroke="#000000" d="M865.1227,-163.2985C865.1227,-165.6863 851.6212,-167.6259 835,-167.6259 818.3788,-167.6259 804.8773,-165.6863 804.8773,-163.2985 804.8773,-163.2985 804.8773,-124.3515 804.8773,-124.3515 804.8773,-121.9636 818.3788,-120.024 835,-120.024 851.6212,-120.024 865.1227,-121.9636 865.1227,-124.3515 865.1227,-124.3515 865.1227,-163.2985 865.1227,-163.2985"/>
|
||||
<path fill="none" stroke="#000000" d="M865.1227,-163.2985C865.1227,-160.9107 851.6212,-158.971 835,-158.971 818.3788,-158.971 804.8773,-160.9107 804.8773,-163.2985"/>
|
||||
<text text-anchor="middle" x="835" y="-147.125" font-family="arial" font-size="11.00" fill="#000000">Message</text>
|
||||
<text text-anchor="middle" x="835" y="-133.925" font-family="arial" font-size="11.00" fill="#000000">queues</text>
|
||||
</g>
|
||||
<!-- subscriber -->
|
||||
<g id="node13" class="node">
|
||||
<title>subscriber</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="663.958,-65.643 634.479,-115.4294 575.521,-115.4294 546.042,-65.643 575.521,-15.8566 634.479,-15.8566 663.958,-65.643"/>
|
||||
<text text-anchor="middle" x="605" y="-82.143" font-family="arial" font-size="11.00" fill="#000000">subscriber</text>
|
||||
<text text-anchor="middle" x="605" y="-68.943" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<text text-anchor="middle" x="605" y="-55.743" font-family="arial" font-size="11.00" fill="#000000">(only sends</text>
|
||||
<text text-anchor="middle" x="605" y="-42.543" font-family="arial" font-size="11.00" fill="#000000">1 msg atm)</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="655.4603,-44.0875 628.2302,-72.2627 573.7698,-72.2627 546.5397,-44.0875 573.7698,-15.9122 628.2302,-15.9122 655.4603,-44.0875"/>
|
||||
<text text-anchor="middle" x="601" y="-47.3875" font-family="arial" font-size="11.00" fill="#000000">subscriber</text>
|
||||
<text text-anchor="middle" x="601" y="-34.1875" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- msgQueues->subscriber -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>msgQueues->subscriber</title>
|
||||
<path fill="none" stroke="#00ff00" d="M818.0484,-164.9352C813.816,-161.4753 809.4112,-158.1665 805,-155.286 760.3684,-126.1423 704.6937,-102.0511 663.4267,-86.2098"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="654.0575,-82.6597 665.0033,-81.9951 658.7331,-84.4314 663.4087,-86.2031 663.4087,-86.2031 663.4087,-86.2031 658.7331,-84.4314 661.8142,-90.4111 654.0575,-82.6597 654.0575,-82.6597"/>
|
||||
<text text-anchor="middle" x="804.2825" y="-136.286" font-family="arial" font-size="10.00" fill="#00ff00">Message</text>
|
||||
<path fill="none" stroke="#00ff00" d="M809.4578,-121.0579C805.1388,-117.8164 800.5691,-114.7238 796,-112.175 751.158,-87.1607 695.4707,-68.8273 655.1006,-57.527"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="645.4418,-54.8755 656.2763,-53.1834 650.2634,-56.1991 655.085,-57.5228 655.085,-57.5228 655.085,-57.5228 650.2634,-56.1991 653.8937,-61.8623 645.4418,-54.8755 645.4418,-54.8755"/>
|
||||
<text text-anchor="middle" x="796.2825" y="-93.175" font-family="arial" font-size="10.00" fill="#00ff00">Message</text>
|
||||
</g>
|
||||
<!-- queueStore -->
|
||||
<g id="node2" class="node">
|
||||
<title>queueStore</title>
|
||||
<path fill="none" stroke="#000000" d="M795.5756,-222.9713C795.5756,-226.2772 771.5622,-228.9625 742,-228.9625 712.4378,-228.9625 688.4244,-226.2772 688.4244,-222.9713 688.4244,-222.9713 688.4244,-169.0506 688.4244,-169.0506 688.4244,-165.7448 712.4378,-163.0594 742,-163.0594 771.5622,-163.0594 795.5756,-165.7448 795.5756,-169.0506 795.5756,-169.0506 795.5756,-222.9713 795.5756,-222.9713"/>
|
||||
<path fill="none" stroke="#000000" d="M795.5756,-222.9713C795.5756,-219.6655 771.5622,-216.9802 742,-216.9802 712.4378,-216.9802 688.4244,-219.6655 688.4244,-222.9713"/>
|
||||
<text text-anchor="middle" x="742" y="-205.911" font-family="arial" font-size="11.00" fill="#000000">SMP connections</text>
|
||||
<text text-anchor="middle" x="742" y="-192.711" font-family="arial" font-size="11.00" fill="#000000">(aka SMP queues)</text>
|
||||
<text text-anchor="middle" x="742" y="-179.511" font-family="arial" font-size="11.00" fill="#000000">persistence</text>
|
||||
<path fill="none" stroke="#000000" d="M786.5756,-163.2985C786.5756,-165.6863 762.5622,-167.6259 733,-167.6259 703.4378,-167.6259 679.4244,-165.6863 679.4244,-163.2985 679.4244,-163.2985 679.4244,-124.3515 679.4244,-124.3515 679.4244,-121.9636 703.4378,-120.024 733,-120.024 762.5622,-120.024 786.5756,-121.9636 786.5756,-124.3515 786.5756,-124.3515 786.5756,-163.2985 786.5756,-163.2985"/>
|
||||
<path fill="none" stroke="#000000" d="M786.5756,-163.2985C786.5756,-160.9107 762.5622,-158.971 733,-158.971 703.4378,-158.971 679.4244,-160.9107 679.4244,-163.2985"/>
|
||||
<text text-anchor="middle" x="733" y="-147.125" font-family="arial" font-size="11.00" fill="#000000">SMP connections</text>
|
||||
<text text-anchor="middle" x="733" y="-133.925" font-family="arial" font-size="11.00" fill="#000000">(aka SMP queues)</text>
|
||||
</g>
|
||||
<!-- main -->
|
||||
<g id="node3" class="node">
|
||||
<title>main</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="93.542,-673.7734 74.271,-701.9486 35.729,-701.9486 16.458,-673.7734 35.729,-645.5982 74.271,-645.5982 93.542,-673.7734"/>
|
||||
<text text-anchor="middle" x="55" y="-677.0734" font-family="arial" font-size="11.00" fill="#000000">main</text>
|
||||
<text text-anchor="middle" x="55" y="-663.8734" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="93.542,-612.5124 74.271,-640.6876 35.729,-640.6876 16.458,-612.5124 35.729,-584.3371 74.271,-584.3371 93.542,-612.5124"/>
|
||||
<text text-anchor="middle" x="55" y="-615.8124" font-family="arial" font-size="11.00" fill="#000000">main</text>
|
||||
<text text-anchor="middle" x="55" y="-602.6124" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- runClient -->
|
||||
<g id="node5" class="node">
|
||||
<title>runClient</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="297.9814,-461.7984 273.4907,-489.9737 224.5093,-489.9737 200.0186,-461.7984 224.5093,-433.6232 273.4907,-433.6232 297.9814,-461.7984"/>
|
||||
<text text-anchor="middle" x="249" y="-465.0984" font-family="arial" font-size="11.00" fill="#000000">runClient</text>
|
||||
<text text-anchor="middle" x="249" y="-451.8984" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="297.9814,-400.5374 273.4907,-428.7127 224.5093,-428.7127 200.0186,-400.5374 224.5093,-372.3622 273.4907,-372.3622 297.9814,-400.5374"/>
|
||||
<text text-anchor="middle" x="249" y="-403.8374" font-family="arial" font-size="11.00" fill="#000000">runClient</text>
|
||||
<text text-anchor="middle" x="249" y="-390.6374" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- main->runClient -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>main->runClient</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M82.1578,-656.6335C97.1002,-646.5366 115.4954,-632.9686 130,-618.6859 167.6779,-581.5844 203.2683,-532.0423 225.5388,-498.6376"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="231.1821,-490.0893 229.4281,-500.914 228.4274,-494.2621 225.6727,-498.4348 225.6727,-498.4348 225.6727,-498.4348 228.4274,-494.2621 221.9172,-495.9556 231.1821,-490.0893 231.1821,-490.0893"/>
|
||||
<text text-anchor="middle" x="198.7235" y="-564.8859" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M82.1578,-595.3725C97.1002,-585.2756 115.4954,-571.7076 130,-557.4249 167.6779,-520.3234 203.2683,-470.7813 225.5388,-437.3766"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="231.1821,-428.8283 229.4281,-439.653 228.4274,-433.001 225.6727,-437.1738 225.6727,-437.1738 225.6727,-437.1738 228.4274,-433.001 221.9172,-434.6945 231.1821,-428.8283 231.1821,-428.8283"/>
|
||||
<text text-anchor="middle" x="198.7235" y="-503.6249" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
</g>
|
||||
<!-- server -->
|
||||
<g id="node6" class="node">
|
||||
<title>server</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="181.542,-461.7984 162.271,-489.9737 123.729,-489.9737 104.458,-461.7984 123.729,-433.6232 162.271,-433.6232 181.542,-461.7984"/>
|
||||
<text text-anchor="middle" x="143" y="-465.0984" font-family="arial" font-size="11.00" fill="#000000">server</text>
|
||||
<text text-anchor="middle" x="143" y="-451.8984" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="181.542,-400.5374 162.271,-428.7127 123.729,-428.7127 104.458,-400.5374 123.729,-372.3622 162.271,-372.3622 181.542,-400.5374"/>
|
||||
<text text-anchor="middle" x="143" y="-403.8374" font-family="arial" font-size="11.00" fill="#000000">server</text>
|
||||
<text text-anchor="middle" x="143" y="-390.6374" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- main->server -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>main->server</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M66.6857,-645.6248C82.3006,-608.0115 110.0166,-541.2491 127.4019,-499.3712"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="131.2659,-490.0635 131.5878,-501.0247 129.3488,-494.6814 127.4317,-499.2993 127.4317,-499.2993 127.4317,-499.2993 129.3488,-494.6814 123.2756,-497.5739 131.2659,-490.0635 131.2659,-490.0635"/>
|
||||
<text text-anchor="middle" x="116.7235" y="-564.8859" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M66.6857,-584.3637C82.3006,-546.7505 110.0166,-479.9881 127.4019,-438.1102"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="131.2659,-428.8025 131.5878,-439.7636 129.3488,-433.4204 127.4317,-438.0382 127.4317,-438.0382 127.4317,-438.0382 129.3488,-433.4204 123.2756,-436.3128 131.2659,-428.8025 131.2659,-428.8025"/>
|
||||
<text text-anchor="middle" x="116.7235" y="-503.6249" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
</g>
|
||||
<!-- ss -->
|
||||
<g id="node4" class="node">
|
||||
<title>ss</title>
|
||||
<polygon fill="none" stroke="#0000ff" points="218.4518,-691.7734 111.5482,-691.7734 111.5482,-655.7734 218.4518,-655.7734 218.4518,-691.7734"/>
|
||||
<text text-anchor="middle" x="165" y="-670.4734" font-family="arial" font-size="11.00" fill="#000000">server TCP socket</text>
|
||||
<polygon fill="none" stroke="#0000ff" points="218.4518,-630.5124 111.5482,-630.5124 111.5482,-594.5124 218.4518,-594.5124 218.4518,-630.5124"/>
|
||||
<text text-anchor="middle" x="165" y="-609.2124" font-family="arial" font-size="11.00" fill="#000000">server TCP socket</text>
|
||||
</g>
|
||||
<!-- ss->runClient -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>ss->runClient</title>
|
||||
<path fill="none" stroke="#0000ff" d="M190.6974,-655.6287C202.3984,-645.9977 215.3212,-633.1626 223,-618.6859 242.6119,-581.7119 248.114,-533.5135 249.3398,-500.3492"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="249.6001,-490.1431 253.8436,-500.2546 249.4726,-495.1415 249.3451,-500.1399 249.3451,-500.1399 249.3451,-500.1399 249.4726,-495.1415 244.8465,-500.0251 249.6001,-490.1431 249.6001,-490.1431"/>
|
||||
<path fill="none" stroke="#0000ff" d="M190.6974,-594.3677C202.3984,-584.7367 215.3212,-571.9016 223,-557.4249 242.6119,-520.4509 248.114,-472.2524 249.3398,-439.0882"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="249.6001,-428.8821 253.8436,-438.9936 249.4726,-433.8805 249.3451,-438.8788 249.3451,-438.8788 249.3451,-438.8788 249.4726,-433.8805 244.8465,-438.7641 249.6001,-428.8821 249.6001,-428.8821"/>
|
||||
</g>
|
||||
<!-- cs -->
|
||||
<g id="node8" class="node">
|
||||
<title>cs</title>
|
||||
<polygon fill="none" stroke="#0000ff" points="552.8099,-585.8859 395.1901,-585.8859 395.1901,-549.8859 552.8099,-549.8859 552.8099,-585.8859"/>
|
||||
<text text-anchor="middle" x="474" y="-564.5859" font-family="arial" font-size="11.00" fill="#000000">client connection TCP socket</text>
|
||||
<polygon fill="none" stroke="#0000ff" points="552.8099,-524.6249 395.1901,-524.6249 395.1901,-488.6249 552.8099,-488.6249 552.8099,-524.6249"/>
|
||||
<text text-anchor="middle" x="474" y="-503.3249" font-family="arial" font-size="11.00" fill="#000000">client connection TCP socket</text>
|
||||
</g>
|
||||
<!-- runClient->cs -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>runClient->cs</title>
|
||||
<path fill="none" stroke="#0000ff" stroke-dasharray="5,2" d="M266.9422,-489.9934C277.6982,-504.6484 292.6446,-521.5997 309.985,-531.8859 323.277,-539.7706 353.6924,-547.2993 384.7675,-553.4144"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="394.8591,-555.3488 384.1907,-557.8857 389.9485,-554.4075 385.0379,-553.4662 385.0379,-553.4662 385.0379,-553.4662 389.9485,-554.4075 385.8851,-549.0467 394.8591,-555.3488 394.8591,-555.3488"/>
|
||||
<text text-anchor="middle" x="326.5075" y="-516.8859" font-family="arial" font-size="10.00" fill="#0000ff">connect</text>
|
||||
<path fill="none" stroke="#0000ff" stroke-dasharray="5,2" d="M266.9422,-428.7324C277.6982,-443.3874 292.6446,-460.3387 309.985,-470.6249 323.277,-478.5096 353.6924,-486.0383 384.7675,-492.1534"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="394.8591,-494.0878 384.1907,-496.6247 389.9485,-493.1465 385.0379,-492.2052 385.0379,-492.2052 385.0379,-492.2052 389.9485,-493.1465 385.8851,-487.7856 394.8591,-494.0878 394.8591,-494.0878"/>
|
||||
<text text-anchor="middle" x="326.5075" y="-455.6249" font-family="arial" font-size="10.00" fill="#0000ff">connect</text>
|
||||
</g>
|
||||
<!-- receive -->
|
||||
<g id="node9" class="node">
|
||||
<title>receive</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="422.0134,-351.6235 401.0067,-379.7987 358.9933,-379.7987 337.9866,-351.6235 358.9933,-323.4482 401.0067,-323.4482 422.0134,-351.6235"/>
|
||||
<text text-anchor="middle" x="380" y="-354.9235" font-family="arial" font-size="11.00" fill="#000000">receive</text>
|
||||
<text text-anchor="middle" x="380" y="-341.7235" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="422.0134,-290.3624 401.0067,-318.5377 358.9933,-318.5377 337.9866,-290.3624 358.9933,-262.1872 401.0067,-262.1872 422.0134,-290.3624"/>
|
||||
<text text-anchor="middle" x="380" y="-293.6624" font-family="arial" font-size="11.00" fill="#000000">receive</text>
|
||||
<text text-anchor="middle" x="380" y="-280.4624" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- runClient->receive -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>runClient->receive</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M242.4559,-433.4059C241.3023,-421.3888 242.3132,-407.8541 249.553,-397.7109 259.7013,-383.493 300.429,-370.5535 333.711,-362.0296"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="343.7588,-359.5295 335.1413,-366.311 338.9067,-360.7368 334.0547,-361.9441 334.0547,-361.9441 334.0547,-361.9441 338.9067,-360.7368 332.9681,-357.5773 343.7588,-359.5295 343.7588,-359.5295"/>
|
||||
<text text-anchor="middle" x="258.7235" y="-400.7109" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M242.4559,-372.1449C241.3023,-360.1277 242.3132,-346.5931 249.553,-336.4499 259.7013,-322.232 300.429,-309.2925 333.711,-300.7686"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="343.7588,-298.2684 335.1413,-305.05 338.9067,-299.4758 334.0547,-300.6831 334.0547,-300.6831 334.0547,-300.6831 338.9067,-299.4758 332.9681,-296.3163 343.7588,-298.2684 343.7588,-298.2684"/>
|
||||
<text text-anchor="middle" x="258.7235" y="-339.4499" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
</g>
|
||||
<!-- client -->
|
||||
<g id="node10" class="node">
|
||||
<title>client</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="612.542,-351.6235 593.271,-379.7987 554.729,-379.7987 535.458,-351.6235 554.729,-323.4482 593.271,-323.4482 612.542,-351.6235"/>
|
||||
<text text-anchor="middle" x="574" y="-354.9235" font-family="arial" font-size="11.00" fill="#000000">client</text>
|
||||
<text text-anchor="middle" x="574" y="-341.7235" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="612.542,-290.3624 593.271,-318.5377 554.729,-318.5377 535.458,-290.3624 554.729,-262.1872 593.271,-262.1872 612.542,-290.3624"/>
|
||||
<text text-anchor="middle" x="574" y="-293.6624" font-family="arial" font-size="11.00" fill="#000000">client</text>
|
||||
<text text-anchor="middle" x="574" y="-280.4624" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- runClient->client -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>runClient->client</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M277.06,-437.6595C296.597,-421.4244 321.2685,-402.1967 333.553,-397.7109 414.4215,-368.1815 446.2239,-417.4923 527,-387.7109 532.1882,-385.7981 537.2696,-383.0977 542.0605,-380.0246"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="550.3305,-374.1805 544.7608,-383.6267 546.2472,-377.0661 542.1638,-379.9517 542.1638,-379.9517 542.1638,-379.9517 546.2472,-377.0661 539.5668,-376.2767 550.3305,-374.1805 550.3305,-374.1805"/>
|
||||
<text text-anchor="middle" x="342.7235" y="-400.7109" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M277.06,-376.3985C296.597,-360.1633 321.2685,-340.9357 333.553,-336.4499 414.4215,-306.9205 446.2239,-356.2313 527,-326.4499 532.1882,-324.5371 537.2696,-321.8366 542.0605,-318.7636"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="550.3305,-312.9195 544.7608,-322.3656 546.2472,-315.8051 542.1638,-318.6906 542.1638,-318.6906 542.1638,-318.6906 546.2472,-315.8051 539.5668,-315.0156 550.3305,-312.9195 550.3305,-312.9195"/>
|
||||
<text text-anchor="middle" x="342.7235" y="-339.4499" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
</g>
|
||||
<!-- send -->
|
||||
<g id="node11" class="node">
|
||||
<title>send</title>
|
||||
<polygon fill="none" stroke="#ffa500" points="517.542,-351.6235 498.271,-379.7987 459.729,-379.7987 440.458,-351.6235 459.729,-323.4482 498.271,-323.4482 517.542,-351.6235"/>
|
||||
<text text-anchor="middle" x="479" y="-354.9235" font-family="arial" font-size="11.00" fill="#000000">send</text>
|
||||
<text text-anchor="middle" x="479" y="-341.7235" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
<polygon fill="none" stroke="#ffa500" points="517.542,-290.3624 498.271,-318.5377 459.729,-318.5377 440.458,-290.3624 459.729,-262.1872 498.271,-262.1872 517.542,-290.3624"/>
|
||||
<text text-anchor="middle" x="479" y="-293.6624" font-family="arial" font-size="11.00" fill="#000000">send</text>
|
||||
<text text-anchor="middle" x="479" y="-280.4624" font-family="arial" font-size="11.00" fill="#000000">thread</text>
|
||||
</g>
|
||||
<!-- runClient->send -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>runClient->send</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M260.5478,-433.5923C267.4946,-420.3735 277.7098,-405.787 291.553,-397.7109 318.388,-382.0555 401.9033,-398.6009 431,-387.7109 436.5046,-385.6507 441.9126,-382.7479 446.9995,-379.4734"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="455.2178,-373.6949 449.6258,-383.1279 451.1276,-376.5708 447.0375,-379.4467 447.0375,-379.4467 447.0375,-379.4467 451.1276,-376.5708 444.4492,-375.7656 455.2178,-373.6949 455.2178,-373.6949"/>
|
||||
<text text-anchor="middle" x="300.7235" y="-400.7109" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M260.5478,-372.3313C267.4946,-359.1125 277.7098,-344.526 291.553,-336.4499 318.388,-320.7945 401.9033,-337.3399 431,-326.4499 436.5046,-324.3897 441.9126,-321.4869 446.9995,-318.2123"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="455.2178,-312.4339 449.6258,-321.8669 451.1276,-315.3098 447.0375,-318.1857 447.0375,-318.1857 447.0375,-318.1857 451.1276,-315.3098 444.4492,-314.5046 455.2178,-312.4339 455.2178,-312.4339"/>
|
||||
<text text-anchor="middle" x="300.7235" y="-339.4499" font-family="arial" font-size="10.00" fill="#ffa500">race</text>
|
||||
</g>
|
||||
<!-- inq -->
|
||||
<g id="node12" class="node">
|
||||
<title>inq</title>
|
||||
<polygon fill="none" stroke="#000000" points="375.5723,-77.643 330.4277,-77.643 330.4277,-53.643 375.5723,-53.643 375.5723,-47.643 393.5723,-65.643 375.5723,-83.643 375.5723,-77.643"/>
|
||||
<text text-anchor="middle" x="362" y="-68.943" font-family="arial" font-size="11.00" fill="#000000">receive</text>
|
||||
<text text-anchor="middle" x="362" y="-55.743" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
<polygon fill="none" stroke="#000000" points="375.5723,-56.0875 330.4277,-56.0875 330.4277,-32.0875 375.5723,-32.0875 375.5723,-26.0875 393.5723,-44.0875 375.5723,-62.0875 375.5723,-56.0875"/>
|
||||
<text text-anchor="middle" x="362" y="-47.3875" font-family="arial" font-size="11.00" fill="#000000">receive</text>
|
||||
<text text-anchor="middle" x="362" y="-34.1875" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
</g>
|
||||
<!-- server->inq -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>server->inq</title>
|
||||
<path fill="none" stroke="#000000" d="M158.5744,-433.6255C199.0689,-360.3738 307.2719,-164.6422 347.055,-92.6775"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="351.9874,-83.755 351.0876,-94.6839 349.5684,-88.1309 347.1493,-92.5068 347.1493,-92.5068 347.1493,-92.5068 349.5684,-88.1309 343.211,-90.3296 351.9874,-83.755 351.9874,-83.755"/>
|
||||
<text text-anchor="middle" x="257.5535" y="-284.536" font-family="arial" font-size="10.00" fill="#000000">END</text>
|
||||
<path fill="none" stroke="#000000" d="M160.3676,-372.2694C201.6259,-305.1164 305.0826,-136.7276 345.4771,-70.9806"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="350.7453,-62.4059 349.3446,-73.2819 348.1279,-66.6661 345.5104,-70.9262 345.5104,-70.9262 345.5104,-70.9262 348.1279,-66.6661 341.6763,-68.5705 350.7453,-62.4059 350.7453,-62.4059"/>
|
||||
<text text-anchor="middle" x="270.5535" y="-223.275" font-family="arial" font-size="10.00" fill="#000000">END</text>
|
||||
</g>
|
||||
<!-- subscribedQ -->
|
||||
<g id="node7" class="node">
|
||||
<title>subscribedQ</title>
|
||||
<polygon fill="none" stroke="#000000" points="305.6775,-685.7734 254.3225,-685.7734 254.3225,-691.7734 236.3225,-673.7734 254.3225,-655.7734 254.3225,-661.7734 305.6775,-661.7734 305.6775,-685.7734"/>
|
||||
<text text-anchor="middle" x="271" y="-677.0734" font-family="arial" font-size="11.00" fill="#000000">subscribed</text>
|
||||
<text text-anchor="middle" x="271" y="-663.8734" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
<polygon fill="none" stroke="#000000" points="305.6775,-624.5124 254.3225,-624.5124 254.3225,-630.5124 236.3225,-612.5124 254.3225,-594.5124 254.3225,-600.5124 305.6775,-600.5124 305.6775,-624.5124"/>
|
||||
<text text-anchor="middle" x="271" y="-615.8124" font-family="arial" font-size="11.00" fill="#000000">subscribed</text>
|
||||
<text text-anchor="middle" x="271" y="-602.6124" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
</g>
|
||||
<!-- subscribedQ->server -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>subscribedQ->server</title>
|
||||
<path fill="none" stroke="#000000" d="M266.2392,-655.5839C259.1914,-630.5454 244.4608,-584.6176 223,-549.8859 209.5338,-528.0925 190.3419,-506.7431 174.1312,-490.5215"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="166.9242,-483.4459 177.2126,-487.2405 170.4921,-486.9488 174.0601,-490.4516 174.0601,-490.4516 174.0601,-490.4516 170.4921,-486.9488 170.9075,-493.6628 166.9242,-483.4459 166.9242,-483.4459"/>
|
||||
<path fill="none" stroke="#000000" d="M266.2392,-594.3229C259.1914,-569.2843 244.4608,-523.3566 223,-488.6249 209.5338,-466.8315 190.3419,-445.4821 174.1312,-429.2605"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="166.9242,-422.1849 177.2126,-425.9794 170.4921,-425.6877 174.0601,-429.1906 174.0601,-429.1906 174.0601,-429.1906 170.4921,-425.6877 170.9075,-432.4017 166.9242,-422.1849 166.9242,-422.1849"/>
|
||||
</g>
|
||||
<!-- cs->receive -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>cs->receive</title>
|
||||
<path fill="none" stroke="#0000ff" d="M466.1473,-549.8195C450.8321,-514.5843 416.6919,-436.0391 396.288,-389.0967"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="392.2772,-379.8691 400.3905,-387.2464 394.2703,-384.4547 396.2635,-389.0403 396.2635,-389.0403 396.2635,-389.0403 394.2703,-384.4547 392.1365,-390.8341 392.2772,-379.8691 392.2772,-379.8691"/>
|
||||
<path fill="none" stroke="#0000ff" d="M466.1473,-488.5585C450.8321,-453.3233 416.6919,-374.7781 396.288,-327.8357"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="392.2772,-318.6081 400.3905,-325.9854 394.2703,-323.1937 396.2635,-327.7792 396.2635,-327.7792 396.2635,-327.7792 394.2703,-323.1937 392.1365,-329.5731 392.2772,-318.6081 392.2772,-318.6081"/>
|
||||
</g>
|
||||
<!-- receive->inq -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>receive->inq</title>
|
||||
<path fill="none" stroke="#0000ff" d="M378.2248,-323.4199C374.7824,-268.7272 367.2355,-148.8234 363.7851,-94.005"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="363.1521,-83.9478 368.2715,-93.6453 363.4663,-88.9379 363.7804,-93.928 363.7804,-93.928 363.7804,-93.928 363.4663,-88.9379 359.2893,-94.2107 363.1521,-83.9478 363.1521,-83.9478"/>
|
||||
<path fill="none" stroke="#0000ff" d="M377.9352,-262.1116C374.4741,-214.757 367.5409,-119.8979 364.0738,-72.4613"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="363.33,-62.2842 368.547,-71.9295 363.6945,-67.2709 364.059,-72.2576 364.059,-72.2576 364.059,-72.2576 363.6945,-67.2709 359.571,-72.5856 363.33,-62.2842 363.33,-62.2842"/>
|
||||
</g>
|
||||
<!-- client->msgQueues -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>client->msgQueues</title>
|
||||
<path fill="none" stroke="#00ff00" d="M617.9267,-342.7233C667.5371,-330.9275 748.6743,-306.1996 805,-261.536 813.4402,-254.8433 820.917,-246.1403 827.2332,-237.2751"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="608.1406,-344.9794 616.874,-338.3479 613.0128,-343.8561 617.885,-342.7328 617.885,-342.7328 617.885,-342.7328 613.0128,-343.8561 618.8959,-347.1178 608.1406,-344.9794 608.1406,-344.9794"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="832.9269,-228.7861 831.0938,-239.5977 830.1417,-232.9386 827.3566,-237.0911 827.3566,-237.0911 827.3566,-237.0911 830.1417,-232.9386 823.6193,-234.5844 832.9269,-228.7861 832.9269,-228.7861"/>
|
||||
<text text-anchor="middle" x="803.2775" y="-296.536" font-family="arial" font-size="10.00" fill="#000000">SEND,</text>
|
||||
<text text-anchor="middle" x="803.2775" y="-284.536" font-family="arial" font-size="10.00" fill="#000000">SUB,</text>
|
||||
<text text-anchor="middle" x="803.2775" y="-272.536" font-family="arial" font-size="10.00" fill="#000000">ACK</text>
|
||||
<path fill="none" stroke="#00ff00" d="M617.701,-280.6354C665.4816,-268.2963 742.3767,-243.2719 796,-200.275 804.2245,-193.6803 811.4235,-184.8988 817.323,-176.2307"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="607.9659,-283.0778 616.5702,-276.2795 612.8156,-281.861 617.6653,-280.6443 617.6653,-280.6443 617.6653,-280.6443 612.8156,-281.861 618.7604,-285.009 607.9659,-283.0778 607.9659,-283.0778"/>
|
||||
<polygon fill="#00ff00" stroke="#00ff00" points="822.7793,-167.6855 821.1903,-178.5357 820.0884,-171.8997 817.3976,-176.1139 817.3976,-176.1139 817.3976,-176.1139 820.0884,-171.8997 813.6048,-173.6921 822.7793,-167.6855 822.7793,-167.6855"/>
|
||||
<text text-anchor="middle" x="795.2775" y="-235.275" font-family="arial" font-size="10.00" fill="#000000">SEND,</text>
|
||||
<text text-anchor="middle" x="795.2775" y="-223.275" font-family="arial" font-size="10.00" fill="#000000">SUB,</text>
|
||||
<text text-anchor="middle" x="795.2775" y="-211.275" font-family="arial" font-size="10.00" fill="#000000">ACK</text>
|
||||
</g>
|
||||
<!-- client->queueStore -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>client->queueStore</title>
|
||||
<path fill="none" stroke="#000000" d="M612.5056,-333.6124C626.6519,-326.0237 642.3006,-316.4164 655,-305.536 678.0563,-285.7822 699.3432,-259.1992 715.0896,-237.1694"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="603.4726,-338.3008 610.2752,-329.6999 607.9104,-335.9974 612.3483,-333.694 612.3483,-333.694 612.3483,-333.694 607.9104,-335.9974 614.4213,-337.6881 603.4726,-338.3008 603.4726,-338.3008"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="720.8455,-228.9729 718.7812,-239.7427 717.972,-233.0647 715.0985,-237.1566 715.0985,-237.1566 715.0985,-237.1566 717.972,-233.0647 711.4159,-234.5705 720.8455,-228.9729 720.8455,-228.9729"/>
|
||||
<path fill="none" stroke="#000000" d="M611.1856,-270.3053C623.478,-262.8849 636.8509,-253.9117 648,-244.275 671.5454,-223.9234 694.102,-196.7862 710.0546,-175.8486"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="602.4731,-275.4213 608.8177,-266.4772 606.7847,-272.8895 611.0964,-270.3577 611.0964,-270.3577 611.0964,-270.3577 606.7847,-272.8895 613.375,-274.2381 602.4731,-275.4213 602.4731,-275.4213"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="716.2575,-167.5813 713.8554,-178.2809 713.2567,-171.5808 710.2559,-175.5802 710.2559,-175.5802 710.2559,-175.5802 713.2567,-171.5808 706.6565,-172.8795 716.2575,-167.5813 716.2575,-167.5813"/>
|
||||
</g>
|
||||
<!-- client->subscribedQ -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>client->subscribedQ</title>
|
||||
<path fill="none" stroke="#000000" d="M548.853,-371.3985C541.8457,-376.7806 534.1842,-382.5475 527,-387.7109 449.2252,-443.6094 398.5216,-426.4431 348.117,-507.8859 342.4564,-517.0322 348.2294,-521.6259 345,-531.8859 331.6605,-574.2659 306.1092,-619.0674 288.8091,-646.7266"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="283.2879,-655.4212 284.8498,-644.5671 285.9683,-651.2003 288.6486,-646.9794 288.6486,-646.9794 288.6486,-646.9794 285.9683,-651.2003 292.4474,-649.3916 283.2879,-655.4212 283.2879,-655.4212"/>
|
||||
<text text-anchor="middle" x="362.4415" y="-522.8859" font-family="arial" font-size="10.00" fill="#000000">(rId,</text>
|
||||
<text text-anchor="middle" x="362.4415" y="-510.8859" font-family="arial" font-size="10.00" fill="#000000">Client)</text>
|
||||
<path fill="none" stroke="#000000" d="M548.853,-310.1374C541.8457,-315.5196 534.1842,-321.2865 527,-326.4499 449.2252,-382.3484 398.5216,-365.1821 348.117,-446.6249 342.4564,-455.7712 348.2294,-460.3649 345,-470.6249 331.6605,-513.0048 306.1092,-557.8064 288.8091,-585.4655"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="283.2879,-594.1602 284.8498,-583.306 285.9683,-589.9392 288.6486,-585.7183 288.6486,-585.7183 288.6486,-585.7183 285.9683,-589.9392 292.4474,-588.1306 283.2879,-594.1602 283.2879,-594.1602"/>
|
||||
<text text-anchor="middle" x="362.4415" y="-461.6249" font-family="arial" font-size="10.00" fill="#000000">(rId,</text>
|
||||
<text text-anchor="middle" x="362.4415" y="-449.6249" font-family="arial" font-size="10.00" fill="#000000">Client)</text>
|
||||
</g>
|
||||
<!-- client->subscriber -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>client->subscriber</title>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M577.0572,-323.4199C582.0173,-277.6627 591.9251,-186.2615 598.5098,-125.5165"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="599.6176,-115.2965 603.0136,-125.7233 599.0787,-120.2674 598.5398,-125.2383 598.5398,-125.2383 598.5398,-125.2383 599.0787,-120.2674 594.0661,-124.7533 599.6176,-115.2965 599.6176,-115.2965"/>
|
||||
<text text-anchor="middle" x="608.8975" y="-205.011" font-family="arial" font-size="10.00" fill="#000000">1 fork</text>
|
||||
<text text-anchor="middle" x="608.8975" y="-193.011" font-family="arial" font-size="10.00" fill="#000000">per</text>
|
||||
<text text-anchor="middle" x="608.8975" y="-181.011" font-family="arial" font-size="10.00" fill="#000000">queue</text>
|
||||
<path fill="none" stroke="#ffa500" stroke-dasharray="5,2" d="M577.0972,-262.1116C581.9467,-217.8786 591.3402,-132.1977 596.796,-82.4333"/>
|
||||
<polygon fill="#ffa500" stroke="#ffa500" points="597.8974,-72.3872 601.2807,-82.818 597.3525,-77.3574 596.8075,-82.3276 596.8075,-82.3276 596.8075,-82.3276 597.3525,-77.3574 592.3343,-81.8371 597.8974,-72.3872 597.8974,-72.3872"/>
|
||||
<text text-anchor="middle" x="620.51" y="-152.825" font-family="arial" font-size="10.00" fill="#000000">1 fork per</text>
|
||||
<text text-anchor="middle" x="620.51" y="-140.825" font-family="arial" font-size="10.00" fill="#000000">SMP queue/</text>
|
||||
<text text-anchor="middle" x="620.51" y="-128.825" font-family="arial" font-size="10.00" fill="#000000">connection</text>
|
||||
</g>
|
||||
<!-- outq -->
|
||||
<g id="node14" class="node">
|
||||
<title>outq</title>
|
||||
<polygon fill="none" stroke="#000000" points="474.5723,-77.643 429.4277,-77.643 429.4277,-83.643 411.4277,-65.643 429.4277,-47.643 429.4277,-53.643 474.5723,-53.643 474.5723,-77.643"/>
|
||||
<text text-anchor="middle" x="443" y="-68.943" font-family="arial" font-size="11.00" fill="#000000">send</text>
|
||||
<text text-anchor="middle" x="443" y="-55.743" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
<polygon fill="none" stroke="#000000" points="474.5723,-56.0875 429.4277,-56.0875 429.4277,-62.0875 411.4277,-44.0875 429.4277,-26.0875 429.4277,-32.0875 474.5723,-32.0875 474.5723,-56.0875"/>
|
||||
<text text-anchor="middle" x="443" y="-47.3875" font-family="arial" font-size="11.00" fill="#000000">send</text>
|
||||
<text text-anchor="middle" x="443" y="-34.1875" font-family="arial" font-size="11.00" fill="#000000">TBQueue</text>
|
||||
</g>
|
||||
<!-- client->outq -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>client->outq</title>
|
||||
<path fill="none" stroke="#0000ff" d="M568.6677,-323.2208C559.7246,-280.037 539.0456,-196.2417 503,-133.286 494.2343,-117.9763 481.6018,-103.0724 470.1868,-91.1685"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="462.9142,-83.805 473.143,-87.7577 466.4278,-87.3624 469.9413,-90.9199 469.9413,-90.9199 469.9413,-90.9199 466.4278,-87.3624 466.7396,-94.082 462.9142,-83.805 462.9142,-83.805"/>
|
||||
<path fill="none" stroke="#0000ff" d="M569.0363,-262.148C560.7382,-221.1225 540.9769,-144.0325 502,-90.175 496.236,-82.2103 488.7272,-74.9287 481.0081,-68.6219"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="472.622,-62.1747 483.2926,-64.7021 476.5859,-65.2222 480.5499,-68.2697 480.5499,-68.2697 480.5499,-68.2697 476.5859,-65.2222 477.8071,-71.8372 472.622,-62.1747 472.622,-62.1747"/>
|
||||
</g>
|
||||
<!-- send->cs -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>send->cs</title>
|
||||
<path fill="none" stroke="#0000ff" d="M478.347,-379.8691C477.3889,-421.308 475.6125,-498.1421 474.6539,-539.6025"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="474.4177,-549.8195 470.1501,-539.7181 474.5333,-544.8208 474.6489,-539.8221 474.6489,-539.8221 474.6489,-539.8221 474.5333,-544.8208 479.1477,-539.9262 474.4177,-549.8195 474.4177,-549.8195"/>
|
||||
<path fill="none" stroke="#0000ff" d="M478.347,-318.6081C477.3889,-360.047 475.6125,-436.8811 474.6539,-478.3415"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="474.4177,-488.5585 470.1501,-478.4571 474.5333,-483.5598 474.6489,-478.5611 474.6489,-478.5611 474.6489,-478.5611 474.5333,-483.5598 479.1477,-478.6652 474.4177,-488.5585 474.4177,-488.5585"/>
|
||||
</g>
|
||||
<!-- inq->client -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>inq->client</title>
|
||||
<path fill="none" stroke="#0000ff" d="M375.4315,-83.7616C409.9367,-130.3079 502.1675,-254.724 547.7526,-316.2167"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="553.8644,-324.4613 544.2941,-319.1078 550.8868,-320.4446 547.9092,-316.4279 547.9092,-316.4279 547.9092,-316.4279 550.8868,-320.4446 551.5242,-313.748 553.8644,-324.4613 553.8644,-324.4613"/>
|
||||
<path fill="none" stroke="#0000ff" d="M377.6198,-62.2326C413.1933,-103.5575 500.6514,-205.1552 545.8859,-257.703"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="552.5056,-265.393 542.5712,-260.75 549.2436,-261.6036 545.9816,-257.8142 545.9816,-257.8142 545.9816,-257.8142 549.2436,-261.6036 549.3921,-254.8784 552.5056,-265.393 552.5056,-265.393"/>
|
||||
</g>
|
||||
<!-- subscriber->outq -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>subscriber->outq</title>
|
||||
<path fill="none" stroke="#0000ff" d="M545.9162,-65.643C525.661,-65.643 503.4286,-65.643 484.8268,-65.643"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="474.6198,-65.643 484.6198,-61.1431 479.6198,-65.643 484.6198,-65.6431 484.6198,-65.6431 484.6198,-65.6431 479.6198,-65.643 484.6198,-70.1431 474.6198,-65.643 474.6198,-65.643"/>
|
||||
<text text-anchor="middle" x="510.2786" y="-71.643" font-family="arial" font-size="10.00" fill="#0000ff">MSG</text>
|
||||
<path fill="none" stroke="#0000ff" d="M546.4214,-44.0875C526.1863,-44.0875 503.5804,-44.0875 484.6766,-44.0875"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="474.5939,-44.0875 484.594,-39.5876 479.5939,-44.0875 484.5939,-44.0876 484.5939,-44.0876 484.5939,-44.0876 479.5939,-44.0875 484.5939,-48.5876 474.5939,-44.0875 474.5939,-44.0875"/>
|
||||
<text text-anchor="middle" x="510.528" y="-50.0875" font-family="arial" font-size="10.00" fill="#0000ff">MSG</text>
|
||||
</g>
|
||||
<!-- outq->send -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>outq->send</title>
|
||||
<path fill="none" stroke="#0000ff" d="M445.3043,-83.9478C451.0874,-129.8886 466.3126,-250.8361 474.1643,-313.2088"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="475.4497,-323.4199 469.7358,-314.0603 474.8251,-318.459 474.2006,-313.4982 474.2006,-313.4982 474.2006,-313.4982 474.8251,-318.459 478.6654,-312.9361 475.4497,-323.4199 475.4497,-323.4199"/>
|
||||
<path fill="none" stroke="#0000ff" d="M445.66,-62.2842C451.4907,-102.1724 465.5041,-198.0375 473.381,-251.9232"/>
|
||||
<polygon fill="#0000ff" stroke="#0000ff" points="474.8703,-262.1116 468.9712,-252.8677 474.1471,-257.1642 473.4239,-252.2167 473.4239,-252.2167 473.4239,-252.2167 474.1471,-257.1642 477.8765,-251.5658 474.8703,-262.1116 474.8703,-262.1116"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
Reference in New Issue
Block a user