[优化] 提升WS连接稳定性

This commit is contained in:
ryan
2026-06-01 16:01:58 +08:00
parent 76f3428f5d
commit 31d10195ca
3 changed files with 13 additions and 3 deletions
+3
View File
@@ -465,6 +465,9 @@ func computeNodeStatus(node *model.Node) string {
if node == nil {
return NodeStatusOffline
}
if node.NodeType == "tunnel_relay" && IsRelayWSConnected(node.NodeID) {
return NodeStatusOnline
}
if IsAgentWSConnected(node.NodeID) {
return NodeStatusOnline
}
+6 -3
View File
@@ -359,12 +359,15 @@ func buildNodeView(node *model.Node) *NodeView {
}
func nodeViewLastSeenAt(node *model.Node) any {
if node != nil && IsAgentWSConnected(node.NodeID) {
return AgentWSConnectedLastSeenValue
}
if node == nil {
return time.Time{}
}
if node.NodeType == "tunnel_relay" && IsRelayWSConnected(node.NodeID) {
return RelayWSConnectedLastSeenValue
}
if IsAgentWSConnected(node.NodeID) {
return AgentWSConnectedLastSeenValue
}
return node.LastSeenAt
}
+4
View File
@@ -1,5 +1,9 @@
package service
const (
RelayWSConnectedLastSeenValue = "__OPENFLARE_WS_CONNECTED__"
)
var DefaultRelayWSHub = NewWSHub("relay")
func RegisterRelayWSClient(nodeID string) *WSClient {