syntax = "proto3"; package v1; import "client.proto"; import "service.proto"; import "request.proto"; import "response.proto"; import "heartbeat.proto"; import "contract.proto"; option go_package = "github.com/polarismesh/specification/source/go/api/v1/service_manage"; option java_package = "com.tencent.polaris.specification.api.v1.service.manage"; option java_outer_classname = "PolarisGRPCService"; service PolarisGRPC { // 客户端上报 rpc ReportClient(Client) returns (Response) {} // 被调方注册服务实例 rpc RegisterInstance(Instance) returns (Response) {} // 被调方反注册服务实例 rpc DeregisterInstance(Instance) returns (Response) {} // 统一发现接口 rpc Discover(stream DiscoverRequest) returns (stream DiscoverResponse) {} // 被调方上报心跳 rpc Heartbeat(Instance) returns (Response) {} } service PolarisHeartbeatGRPC { // 被调方批量上报心跳 rpc BatchHeartbeat(stream HeartbeatsRequest) returns (stream HeartbeatsResponse) {} // 批量获取心跳记录 rpc BatchGetHeartbeat(GetHeartbeatsRequest) returns (GetHeartbeatsResponse) {} // 批量删除心跳记录 rpc BatchDelHeartbeat(DelHeartbeatsRequest) returns (DelHeartbeatsResponse) {} } service PolarisServiceContractGRPC { // 上报服务契约 rpc ReportServiceContract(ServiceContract) returns (Response) {} // 查询服务契约 rpc GetServiceContract(ServiceContract) returns (Response) {} }