-
Notifications
You must be signed in to change notification settings - Fork 0
/
kafka.drawio
179 lines (179 loc) · 28.1 KB
/
kafka.drawio
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<mxfile host="app.diagrams.net" modified="2023-04-14T07:33:37.174Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15" etag="O-j1_3gGJj4ekJ2PMfy3" version="21.1.7" type="github">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="1026" dy="3063" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="u2IP8yDeRJX2FojSlETn-0" value="1) &nbsp;规范(命名,partition 数量,参数)<br>2)项目资源使用报表<br>3)现有集群资源评估(broker 数量)<br>4)kafak 升级" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="20" y="-80" width="490" height="190" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-1" value="HBase<br>1)CDC/RTS<br><span style="white-space: pre;"> 1. 1 Hadoop, 2 HBase cluster<br><span style="white-space: pre;"> <span style="white-space: pre;"> pros: 集群资源完全隔离<br></span></span><span style="white-space: pre;"> <span style="white-space: pre;"> cons: 无法使用cdh管理</span></span><br></span><span style="white-space: pre;"> 2. 1 Hadoop, 1 HBase cluster, RegionServer Group<br><span style="white-space: pre;"> <span style="white-space: pre;"> pros:<br><span style="white-space: pre;"> <span style="white-space: pre;"> <span style="white-space: pre;"> </span></span></span>cdh管理方便<br><span style="white-space: pre;"> <span style="white-space: pre;"> <span style="white-space: pre;"> 充分利用集成资源<br></span></span></span><span style="white-space: pre;"> <span style="white-space: pre;"> <span style="white-space: pre;"> </span></span></span><br><span style="white-space: pre;"> <span style="white-space: pre;"> <span style="white-space: pre;"> <span style="white-space: pre;"> </span></span></span></span><br></span></span><span style="white-space: pre;"> <span style="white-space: pre;"> cons:HMaster共用</span></span><br></span><span style="white-space: pre;"> 3. 2Hadoop, 2 Hbase cluster</span><br><br>2) monitor<br><span style="white-space: pre;">&nbsp; report:<br/>&nbsp; master,region server数量</span>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="50" y="1120" width="590" height="320" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-13" style="edgeStyle=orthogonalEdgeStyle;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.558;entryY=-0.033;entryDx=0;entryDy=0;entryPerimeter=0;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="u2IP8yDeRJX2FojSlETn-2" target="u2IP8yDeRJX2FojSlETn-6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-17" style="edgeStyle=orthogonalEdgeStyle;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="u2IP8yDeRJX2FojSlETn-2" target="u2IP8yDeRJX2FojSlETn-11" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-2" value="HMaster" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="283" y="830" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-3" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="40" y="948" width="250" height="130" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-5" value="RTS Table" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="60" y="998" width="90" height="50" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-6" value="RegionGroup-RTS" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="60" y="948" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-7" value="RTS Table" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="170" y="998" width="90" height="50" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-9" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="390" y="948" width="250" height="130" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-10" value="CDC Table" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="410" y="998" width="90" height="50" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-11" value="RegionGroup-CDC" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="410" y="948" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-12" value="CDC Table" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="520" y="998" width="90" height="50" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-18" value="Region Server Group Step<br>1)配置hbase-site.xml<br>2) hbase shell, 添加分组<br><span style="">&nbsp; </span>add_rsgroup 'rts'<br><span style="">&nbsp; </span>add_rsgroup 'cdc'<br>3)&nbsp;" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="690" y="720" width="270" height="30" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-19" value="<div>&nbsp; &lt;property&gt;</div><div>&nbsp;</div><div>&nbsp; &nbsp; &lt;name&gt;hbase.coprocessor.master.classes&lt;/name&gt;</div><div>&nbsp;</div><div>&nbsp; &nbsp; &lt;value&gt;org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint&lt;/value&gt;</div><div>&nbsp;</div><div>&nbsp; &lt;/property&gt;</div><div>&nbsp;</div><div>&nbsp; &lt;property&gt;</div><div>&nbsp;</div><div>&nbsp; &nbsp; &lt;name&gt;hbase.master.loadbalancer.class&lt;/name&gt;</div><div>&nbsp;</div><div>&nbsp; &nbsp; &lt;value&gt;org.apache.hadoop.hbase.rsgroup.RSGroupBasedLoadBalancer&lt;/value&gt;</div><div>&nbsp;</div><div>&nbsp; &lt;/property&gt;</div><div><br></div>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1300" y="450" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-21" value="1) &nbsp;规范(命名,partition 数量,参数)<br>&lt;application&gt;.[bu].&lt;layer&gt;.&lt;domain&gt;.&lt;subdomain&gt;<br><br>layer: [raw|processing|processed]<br><br>partition数量规范:msg num,msg size,pod,producer,consumer<br><br>一般来说生产消息不会是应用的瓶颈,就只从consumer角度考虑<br><br>方案一:<br>maxConsumerQps = max(consumer records)/s &nbsp;: 峰值,2-8原则<br><br>avgPodConsuemrQps = avg consumer qps(pod),topic一个partition压测<br><br>partitionNum = maxConsumerQps /&nbsp;avgPodConsuemrQps 取2的整数<br><br>partitionNum = max(pod,&nbsp;partitionNum)<br><br><br>方案二:<br>simple strategy:<br>minPartition= pod num * consumer concurrency<br><br>方案三:<br>linux produce, consumer size, record<br><br><br>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="490" y="-1180" width="765" height="530" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-22" value="评估broker<br><br>brokers = replicas &nbsp;/ 4000<br><br>cpu, mem<br><br>threads:&nbsp;<br><br>mem:" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="480" y="-520" width="500" height="280" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-23" value="kafka 升级<br>目标,解决roll restart 数据丢失,<br><br>2.3.2性能优化,zk版本<br>didi 2.5.1<br>3.0??<br><br>partition 数量不均衡, 限流进行partition数据迁移<br>\<br><br>新启动集群,应用迁移" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="470" y="-230" width="500" height="195" as="geometry" />
</mxCell>
<mxCell id="u2IP8yDeRJX2FojSlETn-24" value="partition 数量缩减<br>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1050" y="-220" width="500" height="195" as="geometry" />
</mxCell>
<mxCell id="x0YCZ6udiLPEyF9Ubb17-0" value="Confluent health check:&nbsp;<br>1) consistent server spec<br>2) access control<br>&nbsp; OS-level encryption, such as LUKS encryption<br>3) data compression<br>4) producer config<br> <span style="white-space: pre;"> </span>a. acks=all<br> <span style="white-space: pre;"> </span>b. enable.idempotence<br> <span style="white-space: pre;"> </span>c. delivery.timeout.ms, retries, retry.backoff.ms(zk session timeout, 18000ms)<br><span style="white-space: pre;"> d. max.in.flight.request.per.connection?</span>&nbsp;&nbsp;<br>5) &nbsp;consumer handler<br><span style="white-space: pre;"> </span>• Dead letter queue with manual remediation plan<br><span style="white-space: pre;"> </span>• Dead letter queue with dedicated error handling workflow <span style="white-space: pre;"> <br></span><span style="white-space: pre;"> </span>• Report and pause<br><span style="white-space: pre;"> </span>• Report and ignore<span style=""><br></span>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="35" y="130" width="895" height="460" as="geometry" />
</mxCell>
<mxCell id="x0YCZ6udiLPEyF9Ubb17-2" value="RTS dashboard 存储方案对比<br><br>pnshk hbase table data size<br><br>一个月大概40G,保存2年数据,总的数据大概 1 T" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="890" y="1169" width="590" height="320" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-0" value="provider" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="90" y="1760" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-1" value="consumer" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="95" y="2030" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-2" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="340" y="1670" width="150" height="110" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-3" value="p-3" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="366" y="1730" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-4" value="p-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="360" y="1680" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-5" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="340" y="1820" width="150" height="110" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-7" value="p-2" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="360" y="1830" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-8" value="" style="endArrow=classic;html=1;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="260" y="1770" as="sourcePoint" />
<mxPoint x="330" y="1730" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-9" value="" style="endArrow=classic;html=1;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="260" y="1820" as="sourcePoint" />
<mxPoint x="330" y="1860" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-11" value="R-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="360" y="1880" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-13" value="" style="endArrow=classic;html=1;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="1690" as="sourcePoint" />
<mxPoint x="250" y="1730" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-14" value="ack<br>msg1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="223" y="1735" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-15" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=16;entryX=1;entryY=0.5;entryDx=0;entryDy=0;dashed=1;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="UPJXN7GmPQpWvpFczyUP-11">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="480" y="1710" as="sourcePoint" />
<mxPoint x="530" y="1660" as="targetPoint" />
<Array as="points">
<mxPoint x="570" y="1710" />
<mxPoint x="570" y="1900" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-16" value="ack msg1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=20;fontFamily=Architects Daughter;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="510" y="1775" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-17" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="700" y="1610" width="160" height="170" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-18" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="700" y="1820" width="160" height="170" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-19" value="p-2" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1830" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-20" value="P-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1880" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-21" value="P-3" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1940" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-22" value="R-2" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1615" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-23" value="R-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1665" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-24" value="R-3" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="720" y="1725" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-25" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="950" y="1610" width="160" height="170" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-26" value="" style="rounded=0;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="950" y="1820" width="160" height="170" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-27" value="p-2" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1830" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-28" value="R-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1880" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-29" value="R-3" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1940" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-30" value="R-2" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1615" width="95" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-31" value="P-1" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1665" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="UPJXN7GmPQpWvpFczyUP-32" value="P-3" style="rounded=1;whiteSpace=wrap;html=1;sketch=1;hachureGap=4;jiggle=2;curveFitting=1;fontFamily=Architects Daughter;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DArchitects%2BDaughter;fontSize=20;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="970" y="1725" width="60" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>