Delete internal/cluster/types.go
This commit is contained in:
@@ -1,57 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2026 Safronov Grigorii
|
|
||||||
*
|
|
||||||
* Licensed under the CDDL, Version 1.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
*
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
* https://opensource.org/licenses/CDDL-1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Файл: internal/cluster/types.go
|
|
||||||
// Назначение: Общие типы данных для кластерных операций
|
|
||||||
|
|
||||||
package cluster
|
|
||||||
|
|
||||||
// NodeInfo представляет информацию об узле для координатора
|
|
||||||
type NodeInfo struct {
|
|
||||||
ID string `json:"id"`
|
|
||||||
IP string `json:"ip"`
|
|
||||||
Port int `json:"port"`
|
|
||||||
Status string `json:"status"`
|
|
||||||
LastSeen int64 `json:"last_seen"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// ClusterStatus представляет статус кластера
|
|
||||||
type ClusterStatus struct {
|
|
||||||
Name string `json:"name"`
|
|
||||||
TotalNodes int `json:"total_nodes"`
|
|
||||||
ActiveNodes int `json:"active_nodes"`
|
|
||||||
SyncingNodes int `json:"syncing_nodes"`
|
|
||||||
FailedNodes int `json:"failed_nodes"`
|
|
||||||
ReplicationFactor int `json:"replication_factor"`
|
|
||||||
LeaderID string `json:"leader_id"`
|
|
||||||
Health string `json:"health"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// ClusterHealth представляет информацию о здоровье кластера
|
|
||||||
type ClusterHealth struct {
|
|
||||||
Nodes map[string]*NodeHealth `json:"nodes"`
|
|
||||||
OverallScore float64 `json:"overall_score"`
|
|
||||||
Recommendations string `json:"recommendations"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// NodeHealth представляет здоровье отдельного узла
|
|
||||||
type NodeHealth struct {
|
|
||||||
Status string `json:"status"`
|
|
||||||
LatencyMs int64 `json:"latency_ms"`
|
|
||||||
LastCheck int64 `json:"last_check"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// NodeRequest представляет запрос от одного узла к другому
|
|
||||||
type NodeRequest struct {
|
|
||||||
Type string `json:"type"` // replicate, query, sync, heartbeat
|
|
||||||
Data []byte `json:"data"` // Данные запроса
|
|
||||||
FromNode string `json:"from_node"` // ID узла-отправителя
|
|
||||||
RequestID string `json:"request_id"` // Уникальный ID запроса
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user