Tars插件
说明#
Tars插件是网关用于处理 Tars协议请求的核心处理插件。
插件设置#
插件讲解#
客户端接入Apache ShenYu网关后,会自动注册选择器和规则信息,可以在插件列表 -> rpc proxy -> tars 中查看。关于选择器和规则配置,请参考:选择器和规则管理。
选择器处理#

选择器处理,即handle字段,是网关匹配到流量以后,实际调用的tars服务,可以配置多个,设置负载均衡权重,具体的负载均衡策略,在规则中指定。更多信息请参考插件管理中的 插件处理管理 。
处理配置详解:
host:一般填写localhost。ip:port:ip与端口,这里填写你真实服务的ip+ 端口。protocol::http协议,一般填写http://或者https://,不填写默认为:http://startupTime: 启用时间。weight:负载均衡权重。warmupTime:预热时间。status:开启或关闭。
规则处理#

规则处理,即handle字段,是网关对流量完成最终匹配后,采取何种处理规则。更多信息请参考插件管理中的 插件处理管理 。
- 处理配置详解:
loadStrategy:如果http客户端是一个集群,Apache ShenYu网关调用时采取哪种负载均衡策略,当前支持roundRobin、random和hash。retryCount:调用http客户端的重试次数。timeout:调用http客户端的超时时间。
元数据#
每一个tars接口方法,都会对应一条元数据,当tars应用客户端接入到Apache ShenYu网关时,会自动注册,可以在 shenyu-admin后台管理系统的基础配置 --> 元数据管理中查看。

应用名称:该条元数据所属的应用名称。
方法名称:需要调用的方法名。
路径:
tars请求路径。路径描述:对该路径的说明,方便查看。
参数类型:
tars接口的参数类型列表,按照接口的参数类型顺序,通过半角逗号分隔。Rpc扩展参数:描述了一个
tars服务中每个接口信息。比如,下面是tars服务的两个接口信息:
{ "methodInfo": [ { "methodName": "helloInt", "params": [ { "left": "int", "right": "no" }, { "left": "java.lang.String", "right": "name" } ], "returnType": "int" }, { "methodName": "hello", "params": [ { "left": "int", "right": "no" }, { "left": "java.lang.String", "right": "name" } ], "returnType": "java.lang.String" } ]}服务接口:在注解
@ShenyuTarsService中指定的serviceName。Rpc类型:下拉选择tars。