Test QuickGV: Difference between revisions
Jump to navigation
Jump to search
(→MMD) |
|||
| (191 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
See: https://graphviz.gitlab.io/_pages/pdf/dotguide.pdf | |||
= Dish = | |||
<quickmmd name="dish"> | |||
mindmap | |||
A[Dish] | |||
B1[Sauce Dish] | |||
B2[Shark's Fin Soup Dish] | |||
B3[Divided Dish] | |||
B4[Cassesrole Dish] | |||
</quickmmd> | |||
= MMD = | |||
<quickmmd name="testmmd"> | |||
flowchart LR | |||
Root("規則動詞變化<br>(play)") | |||
Root --> Past("過去") | |||
Root --> Pres("現在") | |||
Root --> Fut("未來") | |||
Past --> P1("過去普通: played") | |||
Past --> P2("過去進行: was/were playing") | |||
Past --> P3("過去完成: had played") | |||
Past --> P4("過去被動: was/were played") | |||
Pres --> R1("現在普通: play / plays") | |||
Pres --> R2("現在進行: am/is/are playing") | |||
Pres --> R3("現在完成: have/has played") | |||
Pres --> R4("現在被動: am/is/are played") | |||
Fut --> F1("未來普通: will play") | |||
Fut --> F2("未來進行: will be playing") | |||
Fut --> F3("未來完成: will have played") | |||
Fut --> F4("未來被動: will be played") | |||
</quickmmd> | |||
= WebSocket Service = | |||
<quickgv name="123" theme="warm" usage="ram"> | |||
subgraph cluster_client { | |||
label="WebSocket Client" | |||
c1[label="var ws = new WebSocket('/foo')"]; | |||
c2[label="ws.onerror = function (ev) ..."]; | |||
c3[label="ws.onopen = function (ev) ..."]; | |||
c4[label="ws.onmessage = function (ev) ..."]; | |||
c5[label="ws.send()"]; | |||
} | |||
subgraph cluster_server { | |||
label=""; | |||
s[label="Service Unit | <rh> Request Handler | <ph> Push Handler | <pw> Push Worker | <mh> Message Handler | <mw> Message Worker"]; | |||
iq[label="Inbound Queue"]; | |||
oq[label="Outbound Queue"]; | |||
} | |||
c1 -> s:rh [color="#ff0000"]; | |||
c2 -> s:rh [color="#0000ff",dir="back"]; | |||
c3 -> s:rh [color="#0000ff",dir="back"]; | |||
c4 -> s:ph [color="#0000ff",dir="back"]; | |||
s:ph -> oq [color="#0000ff",dir="back"]; | |||
s:pw -> oq [color="#0000ff"]; | |||
c5 -> s:mh [color="#ff0000"]; | |||
s:mh -> iq [color="#ff0000"]; | |||
s:mw -> iq [color="#ff0000",dir="back"]; | |||
</quickgv> | |||
= testflow = | |||
<quickgv name="G51" theme="warm"> | |||
label="五環境佈署流程"; | |||
rankdir=TB; | |||
A [label="Local\n開發新功能"]; | |||
B [label="Development\n測試模擬交易"]; | |||
C [label="Staging\n測試真實交易"]; | |||
D [label="Sandbox\n供分銷商測試"]; | |||
E [label="Production\n實際營運"]; | |||
A -> B; | |||
B -> C; | |||
B -> D; | |||
C -> E; | |||
</quickgv> | |||
<quickgv name="G52" theme="warm"> | |||
label="三環境佈署流程"; | |||
rankdir=TB; | |||
A [label="Local\n開發新功能"]; | |||
B [label="Sandbox\n升級新功能"]; | |||
C [label="Production\n升級新功能"]; | |||
A -> B -> C; | |||
</quickgv> | |||
test | |||
= Crawling Flow = | = Crawling Flow = | ||
<quickgv name="G4" theme="warm"> | <quickgv name="G4" theme="warm"> | ||
| Line 20: | Line 118: | ||
F1 [label="SQLAlchemy"]; | F1 [label="SQLAlchemy"]; | ||
F2 [label="GeoJSON"]; | F2 [label="Console"]; | ||
F3 [label="GeoJSON"]; | |||
F4 [label="Elastic Search", fillcolor="#ffffff:#aaaaaa"]; | |||
G1 [label="SQLite"]; | G1 [label="SQLite"]; | ||
| Line 30: | Line 129: | ||
A1 -> A2; | A1 -> A2; | ||
{A1 A2} -> B | {A1 A2} -> B; | ||
A3 -> C; | {B A3 A4} -> C; | ||
C -> {D1 D2 D3 D4} -> E1 -> {F1 F2 F3}; | C -> {D1 D2 D3 D4} -> E1 -> {F1 F2 F3 F4}; | ||
E2 -> F1; | E2 -> F1; | ||
F1 -> {G1 G2 G3 G4}; | F1 -> {G1 G2 G3 G4}; | ||
Latest revision as of 18:09, 31 August 2026
See: https://graphviz.gitlab.io/_pages/pdf/dotguide.pdf
Dish
MMD
WebSocket Service
testflow
test