Skip to content

[FEATURE] Support Configuring Router via v3 API #3219

@Aetherance

Description

@Aetherance

✅ 验证清单

  • 🔍 我已经搜索过 现有 Issues,确信这不是重复请求
  • 📋 我已经查看了 发布说明,确信此功能尚未实现

🎯 功能描述

Dubbo-Go v3 已提供静态路由配置 API,例如:

func WithRouter(opts ...router.Option) InstanceOption {
	sdOpts := router.NewOptions(opts...)

	return func(insOpts *InstanceOptions) {
		if insOpts.Router == nil {
			insOpts.Router = make([]*global.RouterConfig, 0)
		}
		insOpts.Router = append(insOpts.Router, sdOpts.Router)
	}
}

func WithConditions(conditions []string) Option {
	return func(opts *Options) {
		opts.Router.Conditions = conditions
	}
}

func WithTags(tags []global.Tag) Option {
	return func(opts *Options) {
		opts.Router.Tags = tags
	}

}

但是,这些静态配置尚未接入实际的路由链,导致用户通过上述方式配置的路由规则不会生效。

本 issue 的目标是打通静态路由配置与 RouterChain 的链路,预期效果是通过 WithRouter(...) / WithConditions(...) / WithTags(...) 声明的路由规则生效,静态配置行为与动态配置一致,能够参与完整路由决策。

📋 使用场景

支持使用 dubbo-go v3 api 配置路由

⚖️ 复杂性与风险评估

No response

🔗 外部依赖

No response

📚 附加信息

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request
No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions