forked from Java-Edge/Java-Interview-Tutorial
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRedis.dio
More file actions
2158 lines (2158 loc) · 241 KB
/
Redis.dio
File metadata and controls
2158 lines (2158 loc) · 241 KB
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
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<mxfile host="65bd71144e" pages="4">
<diagram id="9dOi3j1dlMAW7eY_ZneJ" name="Redis">
<mxGraphModel dx="869" dy="350" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1600" pageHeight="900" background="#F4F1DE" math="0" shadow="0">
<root>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-0"/>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-1" parent="5GfIY6wJ8j-UMNQF0Tqn-0"/>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-2" value="client1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="81" y="175" width="52" height="52" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-3" value="client2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="81" y="251" width="52" height="52" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-4" value="worker 单线程" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="494" y="110" width="743" height="45" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-6" value="CPU核心" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1173" y="110" width="120" height="71" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-9" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-7" target="5GfIY6wJ8j-UMNQF0Tqn-8" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-7" value="c2 read IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="494" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-11" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-8" target="5GfIY6wJ8j-UMNQF0Tqn-10" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-8" value="计算2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="609" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-13" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-10" target="5GfIY6wJ8j-UMNQF0Tqn-12" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-10" value="c2 write IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="722.5" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-15" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-12" target="5GfIY6wJ8j-UMNQF0Tqn-14" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-12" value="c1 read IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="834" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-17" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-14" target="5GfIY6wJ8j-UMNQF0Tqn-16" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-14" value="计算1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="949" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-16" value="c1 write IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1061" y="169" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-18" value="客户端并发请求" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="60" y="121" width="94" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-19" value="client1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="83" y="419" width="52" height="52" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-20" value="client2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="83" y="495" width="52" height="52" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-21" value="客户端并发请求" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="62" y="373" width="94" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-22" value="worker 单线程(保证 Redis 操作的串行、原子)" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="488" y="396" width="743" height="45" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-23" value="CPU核心" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1167" y="396" width="120" height="71" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-92" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-27" target="5GfIY6wJ8j-UMNQF0Tqn-33" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-27" value="计算2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="638" y="455" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-33" value="计算1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="747" y="455" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-61" value="IO 线程" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="488" y="568" width="743" height="45" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-62" value="CPU核心" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1167" y="568" width="120" height="71" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-100" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-64" target="5GfIY6wJ8j-UMNQF0Tqn-99" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-64" value="c2 read IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="549" y="623" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-99" value="c2 write IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="747" y="623" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-74" value="IO 线程" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="488" y="721" width="743" height="45" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-75" value="CPU核心" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1167" y="721" width="120" height="71" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-98" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="5GfIY6wJ8j-UMNQF0Tqn-83" target="5GfIY6wJ8j-UMNQF0Tqn-97" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-83" value="c1 read IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="549" y="778" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-97" value="c1 write IO" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="836" y="778" width="89" height="43" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-91" value="IO 多线程并行" style="shape=partialRectangle;whiteSpace=wrap;html=1;bottom=1;right=1;left=1;top=0;fillColor=none;routingCenterX=-0.5;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="428" y="605" width="60" height="120" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-101" value="<b>6 个时间片</b>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="338" y="185" width="68" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-103" value="<b>4 个时间片</b>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="340" y="473" width="68" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-104" value="无法保证 1、2 计算顺序,但TCP请求能保证一个IO连接里的顺序" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontStyle=3;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="112" y="71" width="354" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-105" value="" style="endArrow=none;dashed=1;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="81" y="330" as="sourcePoint"/>
<mxPoint x="1352" y="330" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-106" value="传统的 redis 工作流程" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="722.5" y="297" width="127" height="18" as="geometry"/>
</mxCell>
<mxCell id="5GfIY6wJ8j-UMNQF0Tqn-107" value="IO 多线程的 redis 工作流程" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="712.5" y="339" width="154" height="18" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-0" value="<br><br><br>..." style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1993.5" y="361" width="87.5" height="191" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-1" value="socket" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=18;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2006.25" y="326" width="62" height="26" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-2" value="s1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2019.75" y="369" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-3" value="s2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2019.75" y="414" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-4" value="sN" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2019.75" y="509" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-7" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=18;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="20GCJt_ftviHmJzq0dEa-5" target="20GCJt_ftviHmJzq0dEa-6" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-5" value="I/0多路复用程序" style="whiteSpace=wrap;html=1;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2145" y="435" width="144" height="34" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-6" value="文件事件分派器" style="whiteSpace=wrap;html=1;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2319" y="435" width="144" height="34" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-8" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2054.75" y="389" as="sourcePoint"/>
<mxPoint x="2104.75" y="339" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-9" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2054.75" y="431" as="sourcePoint"/>
<mxPoint x="2145" y="477" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-10" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0.75;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2054.75" y="526" as="sourcePoint"/>
<mxPoint x="2145" y="547" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-11" value="<br><br><br>..." style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2574" y="361" width="135" height="191" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-13" value="事件处理器" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=18;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2586.75" y="319" width="100" height="26" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-14" value="命令请求处理器" style="whiteSpace=wrap;html=1;fontSize=16;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2581.5" y="381" width="120" height="41" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-15" value="命令回复处理器" style="whiteSpace=wrap;html=1;fontSize=16;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2581.5" y="426" width="120" height="41" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-16" value="连接应答处理器" style="whiteSpace=wrap;html=1;fontSize=16;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2581.5" y="491" width="120" height="41" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-17" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-14" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2463" y="435" as="sourcePoint"/>
<mxPoint x="2553.2500000000005" y="481" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-18" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-15" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2463" y="449" as="sourcePoint"/>
<mxPoint x="2581.5" y="415.5" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-19" value="" style="endArrow=classic;html=1;fontSize=18;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="20GCJt_ftviHmJzq0dEa-16" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2463" y="467" as="sourcePoint"/>
<mxPoint x="2581.5" y="464.5" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-20" value="" style="whiteSpace=wrap;html=1;fontSize=16;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2153" y="649" width="221" height="59" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-21" value="队列" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=16;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2242.5" y="616" width="42" height="23" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-22" value="s2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2319" y="660.5" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-25" value="文件事件分派器" style="whiteSpace=wrap;html=1;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2526" y="661.5" width="144" height="34" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-26" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.6;dx=40;notch=15;fontSize=16;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2380" y="664" width="132" height="28" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-27" value="传送" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=16;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2396" y="635" width="42" height="23" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-28" value="s1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2438" y="629" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-31" value="s3" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2266" y="660.5" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-32" value="..." style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=16;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2230" y="664" width="23" height="23" as="geometry"/>
</mxCell>
<mxCell id="20GCJt_ftviHmJzq0dEa-33" value="sN" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=18;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2173" y="661" width="35" height="35" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-1" value="" style="shape=umlLifeline;participant=umlActor;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;verticalAlign=top;spacingTop=36;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2278" y="962" width="20" height="341" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-2" value="Redis Client" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2238" y="931" width="102" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-5" value="" style="shape=umlLifeline;participant=umlActor;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;verticalAlign=top;spacingTop=36;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2686.75" y="962" width="20" height="347" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-6" value="Redis Server" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2642.75" y="931" width="108" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-9" value="" style="endArrow=classic;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2289" y="1030" as="sourcePoint"/>
<mxPoint x="2696.2499999999995" y="1030" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-10" value="c向s发送连接请求" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2428" y="1002" width="146" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-11" value="s 将 <font color="#a9c4eb">AE_READABLE</font> 事件映射到 <font color="#ff3333">连接应答处理器</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2304.75" y="1034" width="381" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-12" value="" style="endArrow=classic;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="1H8fmVod1uAOQdD5P4jq-5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2288.9999999999995" y="1149" as="sourcePoint"/>
<mxPoint x="2610.5" y="1149" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-13" value="c向s发送命令请求" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2426" y="1121" width="146" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-14" value="s将 <font color="#a9c4eb">AE_READABLE</font> 事件映射到 <font color="#ff3333">命令请求处理器</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2310.5" y="1155" width="377" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-15" value="" style="endArrow=classic;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2696.2499999999995" y="1280" as="sourcePoint"/>
<mxPoint x="2288.9999999999995" y="1280" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-16" value="s向c发送命令响应" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2433" y="1282" width="146" height="23" as="geometry"/>
</mxCell>
<mxCell id="1H8fmVod1uAOQdD5P4jq-18" value="s将 <font color="#a9c4eb">AE_WRITABLE</font> 事件映射到 <font color="#ff3333">命令回复处理器</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2318" y="1252" width="371" height="23" as="geometry"/>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-0" value="Redis Server" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3439" y="473" width="85" height="37" as="geometry"/>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-2" value="<span>Redis Client A</span>" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3279" y="562" width="82" height="18" as="geometry"/>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-3" value="<span>Redis Client B</span>" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3439" y="562" width="82" height="18" as="geometry"/>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-5" value="<span>Redis Client C</span>" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3606" y="562" width="82" height="18" as="geometry"/>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-7" value="" style="endArrow=none;dashed=1;html=1;entryX=-0.006;entryY=0.892;entryDx=0;entryDy=0;entryPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="dhmE1e_itSu7pFT04USm-0" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="3316" y="562" as="sourcePoint"/>
<mxPoint x="3366" y="512" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-8" value="" style="endArrow=none;dashed=1;html=1;entryX=-0.006;entryY=0.892;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.554;exitY=0.001;exitDx=0;exitDy=0;exitPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="dhmE1e_itSu7pFT04USm-3" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="3361" y="566" as="sourcePoint"/>
<mxPoint x="3483.4900000000002" y="510.004" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-9" value="" style="endArrow=none;dashed=1;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=1;exitY=1;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="dhmE1e_itSu7pFT04USm-0" target="dhmE1e_itSu7pFT04USm-5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="3533" y="549" as="sourcePoint"/>
<mxPoint x="3655.4900000000002" y="493.004" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-10" value="等待命令请求" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="dhmE1e_itSu7pFT04USm-9" vertex="1" connectable="0">
<mxGeometry x="-0.2705" y="2" relative="1" as="geometry">
<mxPoint as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-11" value="等待命令请求" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="dhmE1e_itSu7pFT04USm-9" vertex="1" connectable="0">
<mxGeometry x="-0.2705" y="2" relative="1" as="geometry">
<mxPoint x="-86.52" y="-0.07000000000000028" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-12" value="等待命令请求" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="dhmE1e_itSu7pFT04USm-9" vertex="1" connectable="0">
<mxGeometry x="-0.2705" y="2" relative="1" as="geometry">
<mxPoint x="-183.51999999999998" y="-0.07000000000000028" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-14" value="返回命令执行结果" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="dhmE1e_itSu7pFT04USm-9" vertex="1" connectable="0">
<mxGeometry x="-0.2705" y="2" relative="1" as="geometry">
<mxPoint x="-211.51999999999998" y="-19.069999999999993" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="dhmE1e_itSu7pFT04USm-13" value="" style="endArrow=classic;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="3439" y="506" as="sourcePoint"/>
<mxPoint x="3318" y="562" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-2" value="时间轴" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2297.75" y="1465" width="46" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-4" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2476" y="1456" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-5" value="t1" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2470" y="1435" width="20" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-9" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2374" y="1562" as="targetPoint"/>
<mxPoint x="2374" y="1450.5" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-10" value="" style="endArrow=none;dashed=1;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2374" y="1475" as="sourcePoint"/>
<mxPoint x="2617" y="1475" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-12" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2617" y="1560" as="targetPoint"/>
<mxPoint x="2617" y="1450.5" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-13" value="File Event X" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2375" y="1483" width="153" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-16" value="Time Event Y" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2528" y="1509" width="88" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-14" value="start" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2359" y="1430" width="33" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-15" value="end" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2603" y="1430" width="30" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-18" value="时间轴" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2301" y="1608" width="46" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-37" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="F8GMp22I0Av0FmL0bdyk-19" target="F8GMp22I0Av0FmL0bdyk-36" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-19" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2462" y="1616" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-36" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2550" y="1616" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-20" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2402" y="1606" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-39" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2489" y="1606" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-21" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2374" y="1722" as="targetPoint"/>
<mxPoint x="2374" y="1610.5" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-22" value="" style="endArrow=none;dashed=1;html=1;entryX=1.013;entryY=0.744;entryDx=0;entryDy=0;entryPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2374" y="1635" as="sourcePoint"/>
<mxPoint x="2640.048" y="1635.2469999999998" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-23" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2642.75" y="1720.5" as="targetPoint"/>
<mxPoint x="2642.75" y="1611" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-24" value="FE1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2375" y="1643" width="37" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-32" value="FE2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2412" y="1643" width="55" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-26" value="start" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2359" y="1590" width="33" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-27" value="end" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2626.5" y="1590" width="30" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-38" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2383" y="1625.2599999999998" as="sourcePoint"/>
<mxPoint x="2463" y="1625.2599999999998" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-43" value="sC1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2467" y="1665" width="37" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-44" value="FE3" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2504" y="1665" width="53" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-45" value="sC2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2557" y="1687" width="35" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-46" value="FE4" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2592" y="1687" width="50" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-70" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2579" y="1606" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-71" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2558" y="1626.01" as="sourcePoint"/>
<mxPoint x="2638" y="1626.01" as="targetPoint"/>
<Array as="points">
<mxPoint x="2615" y="1626.51"/>
<mxPoint x="2615" y="1626.51"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-72" value="时间轴" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2718" y="1644" width="46" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-73" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="F8GMp22I0Av0FmL0bdyk-74" target="F8GMp22I0Av0FmL0bdyk-75" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-74" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2879" y="1652" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-95" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="F8GMp22I0Av0FmL0bdyk-75" target="F8GMp22I0Av0FmL0bdyk-94" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-75" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2967" y="1652" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-97" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="F8GMp22I0Av0FmL0bdyk-94" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="3143" y="1661.5" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-94" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;direction=south;rounded=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3055" y="1652" width="8" height="19" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-76" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2819" y="1642" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-77" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2906" y="1642" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-78" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2791" y="1758" as="targetPoint"/>
<mxPoint x="2791" y="1646.5" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-79" value="" style="endArrow=none;dashed=1;html=1;entryX=1.013;entryY=0.744;entryDx=0;entryDy=0;entryPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2791" y="1671" as="sourcePoint"/>
<mxPoint x="3057.048" y="1671.2469999999998" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-80" value="" style="edgeStyle=orthogonalEdgeStyle;html=1;verticalAlign=bottom;endArrow=open;endSize=8;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="3146.8" y="1753.5" as="targetPoint"/>
<mxPoint x="3146.8" y="1644" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-81" value="FE1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2792" y="1679" width="67.5" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-82" value="FE2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2859.5" y="1679" width="71" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-83" value="start" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2776" y="1626" width="33" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-84" value="end" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3132" y="1626" width="30" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-85" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2800" y="1661.2599999999998" as="sourcePoint"/>
<mxPoint x="2880" y="1661.2599999999998" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-86" value="sC1" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2930.5" y="1701" width="29" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-87" value="FE3" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2959.5" y="1701" width="44" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-88" value="sC2" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3075.5" y="1723" width="35" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-89" value="FE4" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3003.5" y="1701" width="36" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-98" value="FE5" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3039.5" y="1701" width="36" height="22" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-90" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2996" y="1642" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="F8GMp22I0Av0FmL0bdyk-100" value="10ms" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3084.75" y="1642" width="39" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-7" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1679" y="1848.75" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-8" value="1. bgsave" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1680.5" y="1822" width="62" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-9" value="<span style="color: rgb(255 , 255 , 255)">Redis Server</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1779.5" y="1832.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-11" value="<span style="color: rgb(255 , 255 , 255)">Redis Server</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1779.5" y="1963.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-14" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;direction=south;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1790.88" y="1892" width="18.5" height="64.01" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-15" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;direction=north;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1824.5" y="1894" width="18.5" height="64.01" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-16" value="2. fork" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1739.5" y="1917" width="43" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-17" value="4.&nbsp; bgsave successfully" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1847.5" y="1917" width="133" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-18" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1871.5" y="1979.75" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-19" value="3.&nbsp; dump" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1882.13" y="1958.0100000000002" width="57" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-21" value="<span>RDB二进制文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1962.5" y="1968.5" width="88" height="41" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-22" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1630.5" y="1816" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-23" value="覆盖旧文件" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2038.5" y="1945.5" width="70" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-37" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1674.5" y="2104.75" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-38" value="1. save" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1683" y="2078" width="49" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-39" value="<span style="color: rgb(255 , 255 , 255)">Redis Server</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1775" y="2088.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-45" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1871.5100000000002" y="2108" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-46" value="2.&nbsp; dump" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1881" y="2078" width="57" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-47" value="<span>RDB二进制文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1966.5" y="2096" width="88" height="41" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-48" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1626" y="2072" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-49" value="覆盖旧文件" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2054.5" y="2074" width="70" height="18" as="geometry"/>
</mxCell>
<mxCell id="xMiHy4sk-qOpb-TtcmuA-50" value="阻塞" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1795.25" y="2060" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-2" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-0" target="nXU8iusiy2Wrt838lKxV-1" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-5" value="<font style="font-size: 11px">1</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=17;rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="nXU8iusiy2Wrt838lKxV-2" vertex="1" connectable="0">
<mxGeometry x="-0.4355" y="1" relative="1" as="geometry">
<mxPoint x="8.49" y="-7" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-0" value="bgrewriteaof" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="536" y="935" width="107" height="23" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-4" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-1" target="nXU8iusiy2Wrt838lKxV-3" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-6" value="<font style="font-size: 11px">2</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=17;rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="nXU8iusiy2Wrt838lKxV-4" vertex="1" connectable="0">
<mxGeometry x="-0.1813" y="1" relative="1" as="geometry">
<mxPoint x="11.5" y="-7.909999999999999" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-22" value="<font style="font-size: 11px">5-1 信号通知父进程</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=17;rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="nXU8iusiy2Wrt838lKxV-4" vertex="1" connectable="0">
<mxGeometry x="-0.1813" y="1" relative="1" as="geometry">
<mxPoint x="150.48999999999998" y="-23.91" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-1" value="父进程" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="554.5" y="982" width="70" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-18" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=13;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-3" target="nXU8iusiy2Wrt838lKxV-17" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-3" value="fork" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="569.5" y="1040" width="40" height="25" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-40" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=13;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-17" target="nXU8iusiy2Wrt838lKxV-36" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-17" value="子进程" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="743" y="1040" width="60.5" height="25" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-7" value="aof_buf" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="503.5" y="1114" width="66" height="25" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-41" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;fontSize=13;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-8" target="nXU8iusiy2Wrt838lKxV-36" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-8" value="aof_rewrite_buf" style="whiteSpace=wrap;html=1;fontSize=17;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="575" y="1114" width="121" height="25" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-10" value="" style="endArrow=classic;html=1;fontSize=17;entryX=0.5;entryY=0;entryDx=0;entryDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" target="nXU8iusiy2Wrt838lKxV-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="590" y="1065" as="sourcePoint"/>
<mxPoint x="540" y="1115" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-11" value="" style="endArrow=classic;html=1;fontSize=17;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="587" y="1065" as="sourcePoint"/>
<mxPoint x="635" y="1113" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-12" value="<font style="font-size: 11px">3-2</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="615" y="1069" width="26" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-13" value="<font style="font-size: 11px">3-1</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="538" y="1069" width="26" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-16" value="旧 AOF 文件" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=13;size=17;align=left;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="494" y="1179" width="93.5" height="37" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-19" value="" style="endArrow=classic;html=1;fontSize=13;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-17" target="nXU8iusiy2Wrt838lKxV-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="660" y="1032" as="sourcePoint"/>
<mxPoint x="710" y="982" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-29" value="" style="endArrow=classic;html=1;fontSize=17;exitX=0.5;exitY=1;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="583" y="1129" as="sourcePoint"/>
<mxPoint x="537" y="1178" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-36" value="旧 AOF 文件" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;fontSize=13;size=17;align=left;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="726.5" y="1107.5" width="93.5" height="38" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-42" value="<font style="font-size: 11px">4</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="773" y="1069" width="16" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-45" value="" style="endArrow=classic;html=1;fontSize=13;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="nXU8iusiy2Wrt838lKxV-36" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="637.5" y="1153" as="sourcePoint"/>
<mxPoint x="587.5" y="1203" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-46" value="<font style="font-size: 11px">5-3</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="648" y="1153.5" width="26" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-47" value="<font style="font-size: 11px">5-2</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=17;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="698" y="1100" width="26" height="26" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-48" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2253" y="1836.75" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-49" value="bgrewriteaof" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2253" y="1814.5" width="76" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-50" value="<span style="color: rgb(255 , 255 , 255)">Redis Master</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2349.5" y="1832.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-51" value="Redis 子进程" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2349.5" y="1963.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-52" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;direction=south;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2378.12" y="1889" width="18.5" height="64.01" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-54" value="fork" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2343.75" y="1915" width="30" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-56" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2441.5" y="1979.75" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-57" value="AOF重写" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2451.13" y="1958.0100000000002" width="59" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-58" value="<span>AOF文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2532.5" y="1968.5" width="66.5" height="41" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-59" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2200.5" y="1816" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-61" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;direction=west;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2255" y="1857.5" width="78.25" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-62" value="OK" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2278" y="1880" width="27" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-63" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1702" y="2254.75" width="93.75" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-64" value="<font style="font-size: 10px">写命令刷新的缓冲区</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1702" y="2228" width="100" height="19" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-65" value="<span style="color: rgb(255 , 255 , 255)">缓冲</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1811.5" y="2238.5" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-66" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1908.01" y="2258" width="118.49" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-67" value="always" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1951.2500000000002" y="2228" width="47" height="18" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-68" value="<span>AOF文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2057" y="2246" width="88" height="41" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-69" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1645.5" y="2216.5" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="nXU8iusiy2Wrt838lKxV-72" value="<font style="font-size: 11px">每条命令 fsync 到硬盘</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=13;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1915.75" y="2276.5" width="118" height="21" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-1" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1698.5" y="2402.25" width="93.75" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-2" value="<font style="font-size: 10px">写命令刷新的缓冲区</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1698.5" y="2375.5" width="100" height="19" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-3" value="<span style="color: rgb(255 , 255 , 255)">缓冲</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1808" y="2386" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-4" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1904.51" y="2405.5" width="118.49" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-5" value="everysec" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1928.0000000000002" y="2379" width="58" height="18" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-6" value="<span>AOF文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2053.5" y="2393.5" width="88" height="41" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-7" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1642" y="2364" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-8" value="<font style="font-size: 11px">每秒把缓冲区 fsync 到硬盘</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=13;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1901.25" y="2424" width="141" height="21" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-9" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1693.5" y="2524.25" width="93.75" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-10" value="<font style="font-size: 10px">写命令刷新的缓冲区</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1693.5" y="2497.5" width="100" height="19" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-11" value="<span style="color: rgb(255 , 255 , 255)">缓冲</span>" style="ellipse;whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1803" y="2508" width="75.75" height="51" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-12" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1899.51" y="2527.5" width="118.49" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-13" value="no" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1941.0000000000002" y="2501" width="23" height="18" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-14" value="<span>AOF文件</span>" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;size=14;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="2048.5" y="2515.5" width="88" height="41" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-15" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1637" y="2486" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="ah_elfWAzptGPmzf7ie0-16" value="<font style="font-size: 11px">操作系统控制 fsync</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=13;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="1906.75" y="2546" width="104" height="21" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-3" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-0" target="jLEcGjrSGywTrWkUS_0Z-2" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-0" value="Redis <br>从节点" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="304" y="1927.01" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-2" value="Redis<br>主节点" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="164" y="1927.01" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-4" value="复制" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="245" y="1942" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-6" value="从Redis" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="312" y="2019" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-10" value="从Redis" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="312" y="2111" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-13" value="从Redis" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="312" y="2203" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-7" value="主Redis" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="104" y="2111" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-9" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-6" target="jLEcGjrSGywTrWkUS_0Z-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="301" y="2068" as="sourcePoint"/>
<mxPoint x="251" y="2118" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-12" value="" style="endArrow=classic;html=1;entryX=0.98;entryY=0.624;entryDx=0;entryDy=0;exitX=-0.02;exitY=0.638;exitDx=0;exitDy=0;entryPerimeter=0;exitPerimeter=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-10" target="jLEcGjrSGywTrWkUS_0Z-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="322" y="2069" as="sourcePoint"/>
<mxPoint x="174" y="2161" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-15" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-13" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="312" y="2082" as="sourcePoint"/>
<mxPoint x="164" y="2174" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-16" value="复制" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="222" y="2074" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-17" value="复制" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="224" y="2139.5" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-18" value="复制" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="222" y="2216.5" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-19" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="674" y="1848.99" width="93.75" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-20" value="<font style="font-size: 10px">slaveof</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="697.88" y="1826.99" width="41" height="19" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-22" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="866.5" y="1868.49" width="118.49" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-23" value="复制" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="897.0000000000002" y="1844.99" width="34" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-25" value="<span style="background-color: rgb(42 , 42 , 42)"><font color="#a9c4eb">Redis Client</font></span>" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="615" y="1826.99" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-27" value="OK(异步)" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="683.37" y="1889.49" width="75" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-28" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.63;dx=32.75;notch=0;direction=west;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="674" y="1870.99" width="93.75" height="18.5" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-30" value="从Redis<br>:6380" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="793" y="1831.99" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-31" value="主Redis<br>:6379" style="shape=cylinder;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="996" y="1835.99" width="60" height="80" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-32" value="<font color="#a9c4eb">redis-6380&gt; slaveof 127.0.0.1 6379<br>OK</font>" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="712.5" y="1928" width="198" height="32" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-34" value="" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="613" y="2018" width="111" height="207" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-36" value="" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="885" y="2018" width="111" height="207" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-35" value="master" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="645" y="2046" width="47" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-38" value="slave" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="921.5" y="2050" width="38" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-39" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.25;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-36" target="jLEcGjrSGywTrWkUS_0Z-34" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="883" y="2070" as="sourcePoint"/>
<mxPoint x="848" y="2022" as="targetPoint"/>
<Array as="points">
<mxPoint x="792" y="2070"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-40" value="1. Connection lost" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="750.5" y="2046" width="106" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-43" value="" style="edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" source="jLEcGjrSGywTrWkUS_0Z-41" target="jLEcGjrSGywTrWkUS_0Z-42" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-44" value="send buffer" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rounded=1;sketch=1;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="jLEcGjrSGywTrWkUS_0Z-43" vertex="1" connectable="0">
<mxGeometry x="-0.0932" y="-1" relative="1" as="geometry">
<mxPoint as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-41" value="write" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="631" y="2089" width="75" height="19" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-42" value="repl_back_buffer" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="615" y="2154" width="107" height="23" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-45" value="2" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="660.5" y="2064" width="16" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-46" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.25;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="884" y="2121.21" as="sourcePoint"/>
<mxPoint x="723" y="2121.21" as="targetPoint"/>
<Array as="points">
<mxPoint x="791" y="2121.46"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-48" value="3. Connection to master" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="735.5" y="2099" width="137" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-49" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.25;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="884.5" y="2150.71" as="sourcePoint"/>
<mxPoint x="723.5" y="2150.71" as="targetPoint"/>
<Array as="points">
<mxPoint x="791.5" y="2150.96"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-50" value="4. psync (offset) (runId)" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="737.5" y="2130" width="134" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-51" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.25;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="724" y="2182" as="sourcePoint"/>
<mxPoint x="885" y="2182" as="targetPoint"/>
<Array as="points">
<mxPoint x="792" y="2182.25"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-52" value="5. continue" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="769.5" y="2161" width="68" height="18" as="geometry"/>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-53" value="" style="endArrow=classic;html=1;entryX=1;entryY=0.25;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;curved=1;sketch=1;strokeColor=#E07A5F;fontColor=#393C56;labelBackgroundColor=#F4F1DE;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="724" y="2210" as="sourcePoint"/>
<mxPoint x="885" y="2210" as="targetPoint"/>
<Array as="points">
<mxPoint x="792" y="2210.25"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="jLEcGjrSGywTrWkUS_0Z-54" value="6. send partial data" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;rounded=1;sketch=1;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="745.75" y="2191" width="112" height="18" as="geometry"/>
</mxCell>
<mxCell id="y3e3DMnlS1YvEJu_HjQv-0" value="" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3859" y="1870" width="362" height="264" as="geometry"/>
</mxCell>
<mxCell id="y3e3DMnlS1YvEJu_HjQv-1" value="Sentinel" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3978" y="1882" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="y3e3DMnlS1YvEJu_HjQv-2" value="Sentinel" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="3877" y="2043" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="y3e3DMnlS1YvEJu_HjQv-3" value="Sentinel" style="whiteSpace=wrap;html=1;rounded=1;sketch=1;fillColor=#F2CC8F;strokeColor=#E07A5F;fontColor=#393C56;" parent="5GfIY6wJ8j-UMNQF0Tqn-1" vertex="1">
<mxGeometry x="4093" y="2043" width="120" height="60" as="geometry"/>
</mxCell>