自定义incoming handler chain覆盖原本default handler chain
yiliuchen opened this issue · comments
sanchen commented
我自定义了一个handler将其配置到 配置文件中。但是这导致了,chassis那边的restful服务器获取到了 provider-incomming链。这段逻辑在server_manger.go里面。
没有配置自定义handler时,restful服务器获取的是默认的 provider-default链,mesher自定义的协议如dubbo,http,grpc是获取的provider-incomming链,本来互补影响。
但是自定义后,现在restful被换成了provider-incomming链(rest-admin协议会使用chassis自带的restful)。
目前我想到的解决方案是
1.暴力的去掉 server_manager中的,for name := range providerMap逻辑,默认server都从default链中获取,这样我们只需要配置文件中同时配置default和incomming 链就可以解决问题。
2.根据不同协议获取不同 链,如incomming 这个可以当成协议名
如:
handler:
chain:
Provider:
rest:
http:
default:
如果没有在配置文件配置则获取default链。
ps:我是不是该把issue提到chassis那边去。
Shawn commented
你没用mesher的话肯定是提到chassis那边
Shawn commented
我建议你复写一遍mesher的配置文件就可以解决这个问题了
sanchen commented
复写没用,要改逻辑