Skip to content
This repository has been archived by the owner on Mar 31, 2023. It is now read-only.

[Message Queue] Design Update #550

Merged
merged 17 commits into from
Mar 17, 2021
Binary file modified docs/modules/ROOT/images/MQportcreate.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/modules/ROOT/images/vpcGroup.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 5 additions & 4 deletions docs/modules/ROOT/pages/mq_services/message_queue_system.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,10 @@ image::MessageArchitecture.png[]
We have two architectural design options.

==== Design Option: MQ (Node Group Topic)
===== Workflow
image::file.png[]
===== Data Schema for Design Option: MQ (Node Group Topic)
image::dataSchema1.png[]

==== Design Option: MQ (VPC Topic) + GRPC
===== Workflow
Expand Down Expand Up @@ -68,11 +71,9 @@ image::channelSelectionAlg.png[]
image::algProcess.png[]
image::channelSelection.png[]

=== Data schema
==== Design Option: MQ (Node Group Topic)
image::dataSchema1.png[]

==== Design Option: MQ (VPC Topic) + GRPC

===== Data Schema for Design Option: MQ (VPC Topic) + GRPC
image::dataSchema2.png[]

=== Task Allocation
Expand Down
33 changes: 16 additions & 17 deletions docs/modules/ROOT/pages/mq_services/message_queue_system.html
Original file line number Diff line number Diff line change
Expand Up @@ -454,7 +454,6 @@ <h1>Message Queue Subsystem Design - Under Development</h1>
<li><a href="#_design">Design</a>
<ul class="sectlevel2">
<li><a href="#_architecture">Architecture</a></li>
<li><a href="#_data_schema">Data schema</a></li>
<li><a href="#_task_allocation">Task Allocation</a></li>
</ul>
</li>
Expand Down Expand Up @@ -526,16 +525,27 @@ <h3 id="_architecture">Architecture</h3>
</div>
<div class="sect3">
<h4 id="_design_option_mq_node_group_topic">Design Option: MQ (Node Group Topic)</h4>
<div class="sect4">
<h5 id="_workflow">Workflow</h5>
<div class="imageblock">
<div class="content">
<img src="../../images/file.png" alt="file">
</div>
</div>
</div>
<div class="sect4">
<h5 id="_data_schema_for_design_option_mq_node_group_topic">Data Schema for Design Option: MQ (Node Group Topic)</h5>
<div class="imageblock">
<div class="content">
<img src="../../images/dataSchema1.png" alt="dataSchema1">
</div>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_design_option_mq_vpc_topic_grpc">Design Option: MQ (VPC Topic) + GRPC</h4>
<div class="sect4">
<h5 id="_workflow">Workflow</h5>
<h5 id="_workflow_2">Workflow</h5>
<div class="imageblock">
<div class="content">
<img src="../../images/vpcGroup.png" alt="vpcGroup">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you check the image name under /image folder? Should be vpcGroup.png, not vpcGrouppng. Thanks.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@issacyxw Where is the image vpcGroup.png?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vpcGroup.png exists in the /image folder

Expand Down Expand Up @@ -615,27 +625,16 @@ <h5 id="_channel_selection_algorithm">Channel Selection Algorithm</h5>
</div>
</div>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_data_schema">Data schema</h3>
<div class="sect3">
<h4 id="_design_option_mq_node_group_topic_2">Design Option: MQ (Node Group Topic)</h4>
<div class="imageblock">
<div class="content">
<img src="../../images/dataSchema1.png" alt="dataSchema1">
</div>
</div>
</div>
<div class="sect3">
<h4 id="_design_option_mq_vpc_topic_grpc_2">Design Option: MQ (VPC Topic) + GRPC</h4>
<div class="sect4">
<h5 id="_data_schema_for_design_option_mq_vpc_topic_grpc">Data Schema for Design Option: MQ (VPC Topic) + GRPC</h5>
<div class="imageblock">
<div class="content">
<img src="../../images/dataSchema2.png" alt="dataSchema2">
</div>
</div>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_task_allocation">Task Allocation</h3>
<table class="tableblock frame-all grid-all stretch">
Expand Down Expand Up @@ -686,7 +685,7 @@ <h2 id="_references">References</h2>
<div id="footer">
<div id="footer-text">
Version 0.1<br>
Last updated 2021-02-25 16:33:17 +0800
Last updated 2021-03-02 21:07:20 +0800
</div>
</div>
</body>
Expand Down
Binary file modified docs/modules/ROOT/pages/mq_services/message_queue_system.pdf
Binary file not shown.
14 changes: 7 additions & 7 deletions docs/modules/ROOT/workflows/MQ_portcreate.puml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ autonumber

user -> PM: Create a port
PM <-> SM_MACM_IPM_RM: PortInfo update
PM <-> VPCM: VpcInfo query by vpc_vni
PM <-> NM: Nodeinfo query by Node_id
PM -> DPM: Send down network configuration request
DPM ->DPM: Select chanel for this network configuration (MQ selected)\n Query vpc_subs in Nodeinfo \n subscribe the ack topic
DPM <-> VPCM: VpcInfo query by vpc_vni
DPM ->DPM: CSA-Alg: Select chanel for this network configuration (MQ selected)\n Query (MQ_url & unicast_topic & multicast_topic & vip_topic) in Vpcinfo \n create these topics if no topics \n subscribe the ack topic (MQ_url & ack_topic)
'DPM <-> VPCM: VPC info query
'DPM <->NM: Query whether target node subscript vpc topic or not
DPM --> targetNodeACA: CSA_Alg: Node subscribe API with GRPC\n Using (MQ_url & unicast_topic & multicast_topic & vip_topic) in VpcInfo \n Send the ack topic info (MQ_url & vip_topic) in VpcInfo
targetNodeACA <--> MQ: Subscrbe the topic
DPM --> targetNodeACA: Query vpc_subs in Nodeinfo \n If target node doesn't subscribe topic, \n Using (MQ_url & unicast_topic & multicast_topic & vip_topic) in VpcInfo \n to call subscribe API with GRPC \n Send the ack topic info (MQ_url & ack_topic) in VpcInfo
targetNodeACA <--> MQ: Subscribe the topic
targetNodeACA --> DPM: subscribe result with GRPC
'DPM -> NM: Node subscription info update
DPM -> MQ: Send goalState (GoalState1) with target MQ\n Using (MQ_url) in VpcInfo
Expand All @@ -31,13 +31,13 @@ autonumber

user -> PM: Create a port
PM <-> SM_MACM_IPM_RM: PortInfo update
PM <-> VPCM: VpcInfo query by vpc_vni
PM <-> NM: Nodeinfo query by Node_id
PM -> DPM: Send down network configuration request
DPM ->DPM: Select chanel for this network configuration (GRPC selected)
DPM <-> VPCM: VpcInfo query by vpc_vni
DPM ->DPM: CSA-Alg: Select chanel for this network configuration (GRPC selected)
'DPM <-> VPCM: VPC info query
'DPM <->NM: Query whether target node subscript vpc topic or not
DPM --> targetNodeACA: CSA-Alg: Node unsubscribe API with GRPC\n Using (MQ_url & unicast_topic & multicast_topic & vip_topic) in VpcInfo
DPM --> targetNodeACA: call node unsubscribe API with GRPC\n Using (MQ_url & unicast_topic & multicast_topic & vip_topic) in VpcInfo
targetNodeACA <--> MQ: Unsubscribe the topic
targetNodeACA --> DPM: Unsubscribe result with GRPC
'DPM -> NM: Node subscription info update
Expand Down