-
Notifications
You must be signed in to change notification settings - Fork 11
/
arch.dot
142 lines (142 loc) · 6.64 KB
/
arch.dot
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
digraph G {
node [shape = "box" style = "filled,rounded" fillcolor = "gold"]
"invoke init hook" [fillcolor = "darkturquoise"]
"start" -> "invoke init hook";
"invoke init hook" -> "init logger";
"init logger" -> "create container";
"create container" -> "add singletons to container";
"add singletons to container" -> "add prototypes to container";
"invoke preBind hook" [fillcolor = "darkturquoise"]
"add prototypes to container" -> "invoke preBind hook";
"invoke preBind hook" -> "update framework status to Initialized";
"register providers" [fillcolor = "chartreuse"]
"update framework status to Initialized" -> "register providers";
"register providers" -> "register provider .:*scheduler.provider";
"register providers" -> "register provider .:*web.provider";
"register providers" -> "register provider .:*event.provider";
"register providers" -> "register provider github.com/mylxsw/glacier/example/job:job.ServiceProvider";
"register provider .:*scheduler.provider" -> "register providers done";
"register provider .:*web.provider" -> "register providers done";
"register provider .:*event.provider" -> "register providers done";
"register provider github.com/mylxsw/glacier/example/job:job.ServiceProvider" -> "register providers done";
"register services" [fillcolor = "chartreuse"]
"register providers done" -> "register services";
"register services" -> "register service .:*service.Demo2Service";
"register service .:*service.Demo2Service" -> "register services done";
"start async runners" [fillcolor = "chartreuse"]
"register services done" -> "start async runners";
"start async runners" -> "start async runner 0";
"start async runners" -> "start async runner 1";
"start async runners" -> "start async runner 2";
"start async runner 0" -> "all async runners started";
"start async runner 1" -> "all async runners started";
"start async runner 2" -> "all async runners started";
"init services" [fillcolor = "chartreuse"]
"all async runners started" -> "init services";
"booting providers" [fillcolor = "chartreuse"]
"init services" -> "booting providers";
"booting providers" -> "booting provider: .:*scheduler.provider";
"booting providers" -> "booting provider: .:*web.provider";
"booting providers" -> "booting provider: .:*event.provider";
"booting providers" -> "booting provider: github.com/mylxsw/glacier/example/job:job.ServiceProvider";
"booting provider: .:*scheduler.provider" -> "all providers booted";
"booting provider: .:*web.provider" -> "all providers booted";
"booting provider: .:*event.provider" -> "all providers booted";
"booting provider: github.com/mylxsw/glacier/example/job:job.ServiceProvider" -> "all providers booted";
"start daemon providers" [fillcolor = "chartreuse"]
"all providers booted" -> "start daemon providers";
"start daemon providers" -> "start daemon provider: .:*scheduler.provider";
"start daemon providers" -> "start daemon provider: .:*web.provider";
"start daemon providers" -> "start daemon provider: .:*event.provider";
"start daemon provider: .:*scheduler.provider" -> "all daemon providers started";
"start daemon provider: .:*web.provider" -> "all daemon providers started";
"start daemon provider: .:*event.provider" -> "all daemon providers started";
"start services" [fillcolor = "chartreuse"]
"all daemon providers started" -> "start services";
"start services" -> "start service .:*service.Demo2Service";
"start service .:*service.Demo2Service" -> "update framework status to Started";
"invoke onServerReady hooks" [fillcolor = "darkturquoise"]
"update framework status to Started" -> "invoke onServerReady hooks";
"invoke onServerReady hooks" -> "invoke onServerReady hook: .:func(infra.Resolver) error";
"invoke onServerReady hook: .:func(infra.Resolver) error" -> "launched";
"invoke beforeServerStop hook" [fillcolor = "darkturquoise"]
"launched" -> "invoke beforeServerStop hook";
"invoke beforeServerStop hook" -> "all async runners stopped";
"all async runners stopped" -> "shutdown";
subgraph cluster_ {
label = ""
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
}
subgraph cluster_initStage {
label = "initStage"
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
"invoke init hook"
"init logger"
}
subgraph cluster_diBindStage {
label = "diBindStage"
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
"create container"
"add singletons to container"
"add prototypes to container"
"invoke preBind hook"
}
subgraph cluster_bootStage {
label = "bootStage"
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
"register providers"
"register provider .:*scheduler.provider"
"register provider .:*web.provider"
"register provider .:*event.provider"
"register provider github.com/mylxsw/glacier/example/job:job.ServiceProvider"
"register providers done"
"register services"
"register service .:*service.Demo2Service"
"register services done"
"start async runners"
"start async runner 0"
"start async runner 1"
"start async runner 2"
"all async runners started"
"init services"
"booting providers"
"booting provider: .:*scheduler.provider"
"booting provider: .:*web.provider"
"booting provider: .:*event.provider"
"booting provider: github.com/mylxsw/glacier/example/job:job.ServiceProvider"
"all providers booted"
"start daemon providers"
"start daemon provider: .:*scheduler.provider"
"start daemon provider: .:*web.provider"
"start daemon provider: .:*event.provider"
"all daemon providers started"
"start services"
"start service .:*service.Demo2Service"
}
subgraph cluster_readyStage {
label = "readyStage"
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
"invoke onServerReady hooks"
"invoke onServerReady hook: .:func(infra.Resolver) error"
"launched"
}
subgraph cluster_shutdownStage {
label = "shutdownStage"
style = "rounded,dashed,filled"
color = "deepskyblue"
fillcolor = "aliceblue"
"invoke beforeServerStop hook"
"all async runners stopped"
"shutdown"
}
}