Skip to content

[Feature]: Support multi-instance AMS REST service #2810

@link3280

Description

@link3280

Description

Currently, only the leader AMS would provide REST service. When an AMS leader transition happens, the standby AMS would take 30+ seconds to initialize optimizing, after which the REST service is available. That affects the availability of the REST service.

I proposed to make the REST service independent of the leadership. That's to say, the stand-by AMS instances need to initialize and run REST service on start. Their only difference to a leader instance is no optimizing service.

Use case/motivation

No response

Describe the solution

I drew a diagram of the main modules in AMS.

amoro-follower-rest (1)

  • The green ones are the modules that should be run by both the leader and the followers when starting.
  • The yellow ones are the leader-only services that should be run when an AMS becomes the leader.
  • The remaining red one is a new module that syncs catalog changes from the leader through reloading from the database.

Subtasks

Related issues

No response

Are you willing to submit a PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions