other: 更新 README.md Server 架构图
This commit is contained in:
parent
1ae1e04264
commit
19b4509fd3
Binary file not shown.
Before Width: | Height: | Size: 101 KiB |
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 30 KiB |
|
@ -0,0 +1,37 @@
|
||||||
|
title This is a title
|
||||||
|
|
||||||
|
participantspacing equal
|
||||||
|
#participantspacing gives manual control of spacing between participants, equal: equal distance between all participants, number i.e. 20.5: minimum space
|
||||||
|
|
||||||
|
actor Client#lightgreen
|
||||||
|
#supported participant types: participant, actor, boundary, control, entity, database
|
||||||
|
|
||||||
|
participantgroup #lightgreen Minotaur Server
|
||||||
|
participant Server
|
||||||
|
participant Shunt
|
||||||
|
abox left of Shunt: System 消息将全局单线程执行,Shunt 消息将会\n在连接当前所在分流渠道内执行。相同分流渠道的\n消息将串行处理,不同分流渠道消息并行处理。\n\n连接可根据业务场景灵活的通过 srv.UseShunt 来\n切换当前所处的分流渠道
|
||||||
|
abox left of Shunt: 异步消息\n\n(SystemMessage) srv.PushAsyncMessage\n(ShuntMessage) srv.PushShuntAsyncMessage\n(SystemMessage) srv.PushUniqueAsyncMessage\n(ShuntMessage) srv.PushUniqueShuntAsyncMessage\n\n Unique 消息将会在上一个相同消息未执行完毕\n的情况下忽略后续消息
|
||||||
|
end
|
||||||
|
|
||||||
|
Client->Server:通过 WebSocket、TCP、UDP、KCP 等协议与服务器建立连接
|
||||||
|
loop Write Loop
|
||||||
|
Server ->Client:写入数据包
|
||||||
|
abox left of Server: 数据包将被写入对应连接的无界缓冲区内等待发送 ,写入\n缓冲区后逻辑视为处理完毕,网络 IO 不会阻塞分流渠道
|
||||||
|
end
|
||||||
|
Server -->Shunt: (SystemMessage) OnConnectionOpenedEvent
|
||||||
|
Shunt --> Shunt: 消息处理
|
||||||
|
Server -->Shunt: (ShuntMessage) OnConnectionOpenedAfterEvent
|
||||||
|
Shunt --> Shunt: 消息处理
|
||||||
|
|
||||||
|
loop Read Loop
|
||||||
|
Client->Server:发送数据包
|
||||||
|
abox right of Client: 数据包将被发送到连接对应分流渠道的无界缓冲区内
|
||||||
|
Server -->Shunt: (ShuntMessage) OnConnectionReceivePacketEvent
|
||||||
|
Shunt --> Shunt: 消息处理
|
||||||
|
Shunt --> Server: 回复消息
|
||||||
|
Server --> Server: 写入 Write Loop
|
||||||
|
end
|
||||||
|
|
||||||
|
Client <->Server: 断开或关闭连接
|
||||||
|
Server -->Shunt: (SystemMessage) OnConnectionClosedEvent
|
||||||
|
Shunt --> Shunt: 消息处理
|
Loading…
Reference in New Issue