ProtocolListenerWrapper(用于支持Listener机制)
/**
* 用于处理监听,监听exported、unexport调用,不处理registry协议
*/
static class ProtocolListenerWrapper_ extends ProtocolListenerWrapper {
public ProtocolListenerWrapper_(Protocol protocol) {
super(protocol);
}
}
ProtocolFilterWrapper(用于支持Filter机制)
/**
* 用于处理过滤器,过滤invoke方法调用,不处理registry协议
*/
static class ProtocolFilterWrapper_ extends ProtocolFilterWrapper{
public ProtocolFilterWrapper_(Protocol protocol) {
super(protocol);
}
}
QosProtocolWrapper(用于支持服务注册、取消注册)
/**
* 用于启动netty服务,默认端口是22222,限制ip访问,只处理registry协议。
*
* 用途:提供手动注册服务、取消注册、查看服务注册的入口
*
*/
static class QosProtocolWrapper_ extends QosProtocolWrapper {
public QosProtocolWrapper_(Protocol protocol) {
super(protocol);
}
}
# telnet 协议
# 默认端口 22222
telnet 127.0.0.1 22222
支持的命令列表
help
quit
ls
online
# 全量
online
# 指定
online cn.java.dubbo.demo.api.FooOneService
offline
# 全量
offline
# 指定
offline cn.java.dubbo.demo.api.FooOneService
# http 协议
curl -X GET "localhost:22222/help"
curl -X GET "localhost:22222/quit"
curl -X GET "localhost:22222/ls"
online
# 全量
curl -X GET "localhost:22222/online"
# 指定
curl -X GET "localhost:22222/online?arg0=cn.java.dubbo.demo.api.FooOneService"
curl -X POST -d 'arg0=cn.java.dubbo.demo.api.FooOneService' --header "Content-Type: application/x-www-form-urlencoded" "localhost:22222/online"
offline
# 全量
curl -X GET "localhost:22222/offline"
# 指定
curl -X GET "localhost:22222/offline?arg0=cn.java.dubbo.demo.api.FooOneService"
curl -X POST -d 'arg0=cn.java.dubbo.demo.api.FooOneService' --header "Content-Type: application/x-www-form-urlencoded" "localhost:22222/offline"