Files
hk4e/node/api/api.proto
2023-01-08 22:11:14 +08:00

80 lines
1.7 KiB
Protocol Buffer

syntax = "proto3";
package node.api;
option go_package = "hk4e/node/api;api";
// 节点服务器注册发现服务
service Discovery {
// 服务器启动注册获取appid
rpc RegisterServer (RegisterServerReq) returns (RegisterServerRsp) {}
// 服务器关闭取消注册
rpc CancelServer (CancelServerReq) returns (NullMsg) {}
// 服务器在线心跳保持
rpc KeepaliveServer (KeepaliveServerReq) returns (NullMsg) {}
// 获取负载最小的服务器的appid
rpc GetServerAppId (GetServerAppIdReq) returns (GetServerAppIdRsp) {}
// 获取区服密钥信息
rpc GetRegionEc2b (NullMsg) returns (RegionEc2b) {}
// 获取负载最小的网关服务器的地址和端口
rpc GetGateServerAddr (GetGateServerAddrReq) returns (GateServerAddr) {}
// 获取全部网关服务器信息列表
rpc GetAllGateServerInfoList (NullMsg) returns (GateServerInfoList) {}
}
message NullMsg {
}
message GetServerAppIdReq {
string server_type = 1;
}
message GetServerAppIdRsp {
string app_id = 1;
}
message RegisterServerReq {
string server_type = 1;
GateServerAddr gate_server_addr = 2;
string version = 3;
}
message RegisterServerRsp {
string app_id = 1;
uint32 gs_id = 2;
}
message CancelServerReq {
string server_type = 1;
string app_id = 2;
}
message KeepaliveServerReq {
string server_type = 1;
string app_id = 2;
}
message GetGateServerAddrReq {
string version = 1;
}
message RegionEc2b {
bytes data = 1;
}
message GateServerAddr {
string kcp_addr = 1;
uint32 kcp_port = 2;
string mq_addr = 3;
uint32 mq_port = 4;
}
message GateServerInfo {
string app_id = 1;
string mq_addr = 2;
uint32 mq_port = 3;
}
message GateServerInfoList {
repeated GateServerInfo gate_server_info_list = 1;
}