Skip to content

Split resource manager to a independent service #9737

@okJiang

Description

@okJiang

Feature Request

Describe your feature request related problem

Currently, TiDB's Resource Control functionality is relatively mature, implementing resource isolation and traffic control through Resource Group and Request Unit (RU) mechanisms. Although the Resource Control service itself has relatively light computational load, running as an internal module of PD presents the following key issues:

  1. Lack of fault isolation: Failures or exceptions in other PD services may affect the stability of Resource Control
  2. Service priority conflicts: During resource constraints, it cannot guarantee that Resource Control gets sufficient computational resources
  3. Cannot independently upgrade the Resource Control service
  4. Limited future expansion: As Resource Control's importance increases in the next-generation architecture, it needs stronger independence and scalability

Describe the feature you'd like

Based on the strategic importance of Resource Control in future architecture, and referencing the existing microservice experience of TSO and Scheduling, we plan to split Resource Control into an independent microservice to achieve:

  1. Fault isolation: Resource Control failures don't affect other PD services, and failures in other services don't affect Resource Control
  2. Backward compatibility: Maintain complete compatibility with existing Resource Control functionality, ensuring smooth migration

Describe alternatives you've considered

Teachability, Documentation, Adoption, Migration Strategy

Task

  • Service discovery

Deploy

  • TiUP

  • Playground

  • Operator

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions