Skip to content

Extract name-resolution logic from ManagedChannelImpl for re-use #5496

Open
@zhangkun83

Description

@zhangkun83

First mentioned in another comment, and then discussed with @ejona86 and @dapengzhang0, it was concluded that we need to extract the following logic:

  1. Parse the target string and convert it into a URI
  2. Manage NameResolver retries
  3. Wire up NameResolver and LoadBalancer

out of ManagedChannelImpl, and make it usable in the following cases:

  1. CHANNEL: ManagedChannelImpl
  2. OOB: LoadBalancer.Helper#createResolvingOobChannel (blocking Implement LoadBalancer.Helper#createResolvingOobChannel #5495)
  3. CHILD_POLICY: XdsLoadBalancer "custom mode": XdsLoadBalancer receives the target name for each locality, and needs to resolve the target name and start a child LoadBlanacer for it.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions