RPC 发布订阅配置

优质
小牛编辑
121浏览
2023-12-01

ProviderConfig

属性名称默认值备注
idID自动生成
application应用对象空ApplicationConfig
interfaceId服务接口(唯一标识元素)不管是普通调用和返回调用,这里都设置实际的接口类
uniqueId服务标签(唯一标识元素)
filterRef过滤器配置实例List
filter过滤器配置别名多个用逗号隔开
registry服务端注册中心List
methods方法级配置Map<String, MethodConfig>
serialization序列化协议hessian2
register是否注册true取决于实现,可能不生效。
subscribe是否订阅true取决于实现,可能不生效。
proxy代理类型javassist还有JDK动态代理
ref服务接口实现类
server服务端List,可以一次发到多个服务端
delay服务延迟发布时间服务延迟
weight服务静态权重
include包含的方法
exclude不包含的方法
dynamic是否动态注册
priority服务优先级
bootstrap服务发布启动器bolt
executor自定义线程池
timeout服务端执行超时时间
concurrents并发执行请求接口下每方法的最大可并行执行请求数,配置-1关闭并发过滤器,等于0表示开启过滤但是不限制
cacheRef结果缓存实现类
mockRefMock实现类
mock是否开启Mock
validation是否开启参数验证(jsr303)
compress是否启动压缩false
cache是否启用结果缓存false
parameters额外属性Map<String, String>

ConsumerConfig

属性名称默认值备注
idID自动生成
application应用对象空ApplicationConfig
interfaceId服务接口(唯一标识元素)不管是普通调用和返回调用,这里都设置实际的接口类
uniqueId服务标签(唯一标识元素)
filterRef过滤器配置实例List
filter过滤器配置别名List
registry服务端注册中心List
methods方法级配置Map<String, MethodConfig>
serialization序列化协议hessian2
register是否注册true取决于实现,可能不生效。
subscribe是否订阅true取决于实现,可能不生效。
proxy代理类型javassist还有JDK动态代理
protocol调用的协议bolt目前支持bolt,rest,dubbo
directUrl直连地址直连后register
generic是否泛化调用false
connectTimeout建立连接超时时间3000(cover 5000)
disconnectTimeout断开连接等等超时时间5000(cover 10000)
cluster集群模式failover
connectionHolder连接管理器实现all
loadBalancer负载均衡算法random
lazy是否延迟建立长连接false
sticky是否使用粘性连接false跳过负载均衡算法使用上一个地址
inJVM是否转为JVM调用trueJVM发现服务提供者,转为走本地
check是否检查强依赖false无可用服务端启动失败
heartbeat心跳间隔30000客户端给服务端发心跳间隔。取决于实现,可能不生效。
reconnect重连间隔10000客户端重建端口长连接的间隔。取决于实现,可能不生效。
router路由器配置别名List
routerRef路由器配置实例List
bootstrap服务引用启动器bolt
addressWait等待地址获取时间-1取决于实现,可能不生效。
timeout调用超时时间3000(cover 5000)
retries失败后重试次数0跟集群模式有关,failover读取此参数。
invokeType调用类型sync
onReturn并发执行请求数接口下每方法的最大可并行执行请求数,
配置-1关闭并发过滤器,等于0表示开启过滤但是不限制
cacheRef结果缓存实现类
mockRefMock实现类
cache是否启用结果缓存false
mock是否开启Mock
validation是否开启参数验证基于JSR303
compress是否启动压缩false
parameters额外属性Map<String, String>

MethodConfig

属性名称默认值备注
name方法名
timeout调用超时时间null
retries失败后重试次数null
invokeType调用类型null
validation是否开启参数验证null基于JSR303
onReturn返回时调用的SofaResponseCallbacknull用于实现Callback等
concurrent并发执行请求数null接口下每方法的最大可并行执行请求数,配置-1关闭并发过滤器,等于0表示开启过滤但是不限制。
validation是否开启参数验证null
compress是否启动压缩null
parameters额外属性Map<String, String>

ServerConfig

idId默认值备注
protocol协议bolt目前支持bolt,rest,dubbo
host主机0.0.0.0
port端口12200默认端口 bolt:12200, rest:8341, h2c:12300, dubbo:20880
contextPath上下文路径/
ioThreadsIO线程池数0取决于实现,可能不生效。例如bolt默认cpu*2。0表示自动计算。
threadPoolType业务线程池类型cached
coreThreads业务线程池核心大小80(override 20)
maxThreads业务线程池最大值400(override 200)
telnet是否允许telnettrue取决于实现,可能不生效。例如bolt不支持telnet。
queueType业务线程池类型normal另外还有优先级队列等
queues业务线程池队列1000(override 0)
aliveTime业务线程池存活时间300000(override 60000)
preStartCoreId自动生成
accepts最大长连接数量100000取决于实现,可能不生效。
serialization序列化协议hesisan2
virtualHost虚拟主机地址注册到注册中心时优先使用
virtualPort虚拟主机端口注册到注册中心时优先使用
epoll使用false取决于实现,可能不生效。
daemon是否守护端口truetrue的话随主线程退出而退出,false的话则要主动退出
adaptivePort是否调整端口false当端口被占用,自动+1进行适应
transport传输层实现bolt (cover netty4)取决于实现,可能不生效
autoStart是否自动启动端口true
stopTimeout优雅关闭超时时间(毫秒)10000(override 20000)
boundHost绑定的地址默认取host值。
parameters额外属性Map<String, String>

RegistryConfig

属性名称默认值备注
protocol协议zookeeper目前支持zookeeper和local
address注册中心地址和index属性必选一个
index指定注册中心寻址服务的地址和address属性必选一个
register是否注册服务true
subscribe是否订阅服务true
timeout调用注册中心超时时间10s
connectTimeout连接注册中心超时时间20s
filelocal协议时使用的本地文件位置$HOME