Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENHANCEMENT]: 心跳 v2 协议增加额外的"流水线/实例配置"应用状态上报接口 #1869

Open
bilosikia opened this issue Nov 11, 2024 · 0 comments
Labels
enhancement Feature enhancement

Comments

@bilosikia
Copy link
Contributor

Concisely describe the proposed feature
v2 版本的心跳协议,流水线和实例配置有额外的拉取接口,但没有上报接口。目前社区版本的 configer provier 实现是在心跳中上报流水线状态和实例配置状态。这带来了几个问题:

  1. 使得心跳接口变得复杂。心跳服务要同时处理心跳和流水线/实例配置, 导致服务难以拆分。
  2. 状态的上报要等到下一次心跳的上报,不够及时。
  3. 心跳支持全量心跳和非全量心跳,在心跳中上报使得需要全量心跳的场景增多,如果只上报流水线状态,又多了一种额外的状态。

Describe the solution you'd like (if any)
新增流水线和实例配置上报接口

// API: /Agent/ReportPipelineConfig/
// API: /Agent/ReportInstanceConfig/
// Agent request to ConfigServer, report status of the config
message ReportConfigRequest {
  bytes request_id = 1;
  bytes instance_id = 2; // Agent's unique identification
  repeated ConfigInfo config_infos = 3; // Config status info
}

// ConfigServer response to Agent's request
message ReportConfigResponse {
  bytes request_id = 1;
  CommonResponse commonResponse = 2;
}
  1. 流水线状态变化后,可以直接使用该接口完成流水线状态的上报,不用等下一次心跳。
  2. 心跳协议可以选择性实现,可以在心跳中上报,也可能采用此接口上报。类似于流水线配置拉取,可以使用额外的接口,也可以在心跳中下发。

Additional comments

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature enhancement
Projects
None yet
Development

No branches or pull requests

1 participant