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

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions