| 限定符和类型 | 方法和说明 |
|---|---|
void |
HaStrategy.setUrl(URL url) |
void |
Cluster.setUrl(URL url) |
| 限定符和类型 | 字段和说明 |
|---|---|
protected URL |
AbstractHaStrategy.url |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
AbstractHaStrategy.setUrl(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
URL |
ClusterSupport.getUrl() |
URL |
ClusterSpi.getUrl() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected Registry |
ClusterSupport.getRegistry(URL url) |
void |
ClusterSupport.notify(URL registryUrl,
List<URL> urls)
1 notify的执行需要串行
2 notify通知都是全量通知,在设入新的referer后,cluster需要把不再使用的referer进行回收,避免资源泄漏;
3 如果该registry对应的referer数量为0,而没有其他可用的referers,那就忽略该次通知;
4 此处对protoco进行decorator处理,当前为增加filters
|
void |
ClusterSpi.setUrl(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
ClusterSupport.notify(URL registryUrl,
List<URL> urls)
1 notify的执行需要串行
2 notify通知都是全量通知,在设入新的referer后,cluster需要把不再使用的referer进行回收,避免资源泄漏;
3 如果该registry对应的referer数量为0,而没有其他可用的referers,那就忽略该次通知;
4 此处对protoco进行decorator处理,当前为增加filters
|
| 构造器和说明 |
|---|
ClusterSupport(Class<T> interfaceClass,
List<URL> registryUrls) |
| 限定符和类型 | 方法和说明 |
|---|---|
ConcurrentHashSet<URL> |
ServiceConfig.getRegistereUrls() |
protected List<URL> |
AbstractInterfaceConfig.loadRegistryUrls() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected boolean |
ServiceConfig.serviceExists(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected String |
AbstractInterfaceConfig.getLocalHostAddress(List<URL> registryURLs) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T> Provider<T> |
SimpleConfigHandler.getProvider(Protocol protocol,
T proxyImpl,
URL url,
Class<T> clz) |
| 限定符和类型 | 方法和说明 |
|---|---|
<T> ClusterSupport<T> |
SimpleConfigHandler.buildClusterSupport(Class<T> interfaceClass,
List<URL> registryUrls) |
<T> ClusterSupport<T> |
ConfigHandler.buildClusterSupport(Class<T> interfaceClass,
List<URL> registryUrls) |
<T> Exporter<T> |
SimpleConfigHandler.export(Class<T> interfaceClass,
T ref,
List<URL> registryUrls) |
<T> Exporter<T> |
ConfigHandler.export(Class<T> interfaceClass,
T ref,
List<URL> registryUrls) |
<T> void |
SimpleConfigHandler.unexport(List<Exporter<T>> exporters,
Collection<URL> registryUrls) |
<T> void |
ConfigHandler.unexport(List<Exporter<T>> exporters,
Collection<URL> registryUrls) |
| 构造器和说明 |
|---|
ServiceMockFilter.MockInfo(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected abstract <T> Exporter<T> |
AbstractProtocol.createExporter(Provider<T> provider,
URL url) |
protected abstract <T> Referer<T> |
AbstractProtocol.createReferer(Class<T> clz,
URL url,
URL serviceUrl) |
<T> Exporter<T> |
AbstractProtocol.export(Provider<T> provider,
URL url) |
<T> Referer<T> |
AbstractProtocol.refer(Class<T> clz,
URL url) |
<T> Referer<T> |
AbstractProtocol.refer(Class<T> clz,
URL url,
URL serviceUrl) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T> Exporter<T> |
InjvmProtocol.createExporter(Provider<T> provider,
URL url) |
protected <T> Referer<T> |
InjvmProtocol.createReferer(Class<T> clz,
URL url,
URL serviceUrl) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T> Exporter<T> |
AbstractMockRpcProtocol.createExporter(Provider<T> provider,
URL url) |
protected <T> Referer<T> |
AbstractMockRpcProtocol.createReferer(Class<T> clz,
URL url,
URL serviceUrl) |
ProviderMessageRouter |
AbstractMockRpcProtocol.getMockProviderMessageRouter(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T> Exporter<T> |
DefaultRpcProtocol.createExporter(Provider<T> provider,
URL url) |
protected <T> Referer<T> |
DefaultRpcProtocol.createReferer(Class<T> clz,
URL url,
URL serviceUrl) |
protected ProviderMessageRouter |
DefaultRpcExporter.initRequestRouter(URL url) |
| 构造器和说明 |
|---|
DefaultRpcExporter(Provider<T> provider,
URL url,
ConcurrentHashMap<String,ProviderMessageRouter> ipPort2RequestRouter,
ConcurrentHashMap<String,Exporter<?>> exporterMap) |
DefaultRpcReferer(Class<T> clz,
URL url,
URL serviceUrl) |
| 限定符和类型 | 方法和说明 |
|---|---|
<T> Exporter<T> |
ProtocolFilterDecorator.export(Provider<T> provider,
URL url) |
<T> Referer<T> |
ProtocolFilterDecorator.refer(Class<T> clz,
URL url,
URL serviceUrl) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T> Exporter<T> |
MotanV2Protocol.createExporter(Provider<T> provider,
URL url) |
protected <T> Referer<T> |
MotanV2Protocol.createReferer(Class<T> clz,
URL url,
URL serviceUrl) |
| 限定符和类型 | 方法和说明 |
|---|---|
URL |
Registry.getUrl() |
| 限定符和类型 | 方法和说明 |
|---|---|
List<URL> |
DiscoveryService.discover(URL url) |
Collection<URL> |
RegistryService.getRegisteredServiceUrls() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
RegistryService.available(URL url)
set service status to available, so clients could use it
|
List<URL> |
DiscoveryService.discover(URL url) |
Registry |
RegistryFactory.getRegistry(URL url) |
void |
NotifyListener.notify(URL registryUrl,
List<URL> urls) |
void |
RegistryService.register(URL url)
register service to registry
|
void |
DiscoveryService.subscribe(URL url,
NotifyListener listener) |
void |
RegistryService.unavailable(URL url)
set service status to unavailable, client should not discover services of unavailable state
|
void |
RegistryService.unregister(URL url)
unregister service to registry
|
void |
DiscoveryService.unsubscribe(URL url,
NotifyListener listener) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
NotifyListener.notify(URL registryUrl,
List<URL> urls) |
| 限定符和类型 | 方法和说明 |
|---|---|
URL |
LocalRegistryService.getUrl() |
URL |
AbstractRegistry.getUrl() |
| 限定符和类型 | 方法和说明 |
|---|---|
List<URL> |
FailbackRegistry.discover(URL url) |
List<URL> |
AbstractRegistry.discover(URL url) |
List<URL> |
LocalRegistryService.doDiscover(URL url) |
protected List<URL> |
DirectRegistry.doDiscover(URL subscribeUrl) |
protected abstract List<URL> |
AbstractRegistry.doDiscover(URL url) |
Map<String,List<URL>> |
LocalRegistryService.getAllUrl()
防止数据在外部被变更,因此copy一份
|
protected List<URL> |
AbstractRegistry.getCachedUrls(URL url) |
Collection<URL> |
AbstractRegistry.getRegisteredServiceUrls() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
AbstractRegistry.available(URL url) |
protected Registry |
LocalRegistryFactory.createRegistry(URL url) |
protected Registry |
DirectRegistryFactory.createRegistry(URL url) |
protected abstract Registry |
AbstractRegistryFactory.createRegistry(URL url) |
List<URL> |
FailbackRegistry.discover(URL url) |
List<URL> |
AbstractRegistry.discover(URL url) |
protected void |
LocalRegistryService.doAvailable(URL url) |
protected void |
DirectRegistry.doAvailable(URL url) |
protected abstract void |
AbstractRegistry.doAvailable(URL url) |
List<URL> |
LocalRegistryService.doDiscover(URL url) |
protected List<URL> |
DirectRegistry.doDiscover(URL subscribeUrl) |
protected abstract List<URL> |
AbstractRegistry.doDiscover(URL url) |
void |
LocalRegistryService.doRegister(URL url) |
protected void |
DirectRegistry.doRegister(URL url) |
protected abstract void |
AbstractRegistry.doRegister(URL url) |
void |
LocalRegistryService.doSubscribe(URL url,
NotifyListener listener) |
protected void |
DirectRegistry.doSubscribe(URL url,
NotifyListener listener) |
protected abstract void |
AbstractRegistry.doSubscribe(URL url,
NotifyListener listener) |
protected void |
LocalRegistryService.doUnavailable(URL url) |
protected void |
DirectRegistry.doUnavailable(URL url) |
protected abstract void |
AbstractRegistry.doUnavailable(URL url) |
void |
LocalRegistryService.doUnregister(URL url) |
protected void |
DirectRegistry.doUnregister(URL url) |
protected abstract void |
AbstractRegistry.doUnregister(URL url) |
void |
LocalRegistryService.doUnsubscribe(URL url,
NotifyListener listener) |
protected void |
DirectRegistry.doUnsubscribe(URL url,
NotifyListener listener) |
protected abstract void |
AbstractRegistry.doUnsubscribe(URL url,
NotifyListener listener) |
protected List<URL> |
AbstractRegistry.getCachedUrls(URL url) |
Registry |
AbstractRegistryFactory.getRegistry(URL url) |
protected String |
AbstractRegistryFactory.getRegistryUri(URL url) |
protected void |
AbstractRegistry.notify(URL refUrl,
NotifyListener listener,
List<URL> urls) |
void |
FailbackRegistry.register(URL url) |
void |
AbstractRegistry.register(URL url) |
void |
FailbackRegistry.subscribe(URL url,
NotifyListener listener) |
void |
AbstractRegistry.subscribe(URL url,
NotifyListener listener) |
void |
AbstractRegistry.unavailable(URL url) |
void |
FailbackRegistry.unregister(URL url) |
void |
AbstractRegistry.unregister(URL url) |
void |
FailbackRegistry.unsubscribe(URL url,
NotifyListener listener) |
void |
AbstractRegistry.unsubscribe(URL url,
NotifyListener listener) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
AbstractRegistry.notify(URL refUrl,
NotifyListener listener,
List<URL> urls) |
| 构造器和说明 |
|---|
AbstractRegistry(URL url) |
DirectRegistry(URL url) |
FailbackRegistry(URL url) |
LocalRegistryService(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
List<URL> |
CommandFailbackRegistry.commandPreview(URL url,
RpcCommand rpcCommand,
String previewIP) |
protected abstract List<URL> |
CommandFailbackRegistry.discoverService(URL url) |
List<URL> |
CommandServiceManager.discoverServiceWithCommand(URL serviceUrl,
Map<String,Integer> weights,
RpcCommand rpcCommand) |
List<URL> |
CommandServiceManager.discoverServiceWithCommand(URL serviceUrl,
Map<String,Integer> weights,
RpcCommand rpcCommand,
String localIP) |
protected List<URL> |
CommandFailbackRegistry.doDiscover(URL url) |
ConcurrentHashMap<URL,CommandServiceManager> |
CommandFailbackRegistry.getCommandManagerMap() |
| 限定符和类型 | 方法和说明 |
|---|---|
List<URL> |
CommandFailbackRegistry.commandPreview(URL url,
RpcCommand rpcCommand,
String previewIP) |
protected abstract String |
CommandFailbackRegistry.discoverCommand(URL url) |
protected abstract List<URL> |
CommandFailbackRegistry.discoverService(URL url) |
List<URL> |
CommandServiceManager.discoverServiceWithCommand(URL serviceUrl,
Map<String,Integer> weights,
RpcCommand rpcCommand) |
List<URL> |
CommandServiceManager.discoverServiceWithCommand(URL serviceUrl,
Map<String,Integer> weights,
RpcCommand rpcCommand,
String localIP) |
protected List<URL> |
CommandFailbackRegistry.doDiscover(URL url) |
protected void |
CommandFailbackRegistry.doSubscribe(URL url,
NotifyListener listener) |
protected void |
CommandFailbackRegistry.doUnsubscribe(URL url,
NotifyListener listener) |
void |
CommandServiceManager.notifyCommand(URL serviceUrl,
String commandString) |
void |
CommandListener.notifyCommand(URL refUrl,
String commandString) |
void |
ServiceListener.notifyService(URL refUrl,
URL registryUrl,
List<URL> urls) |
void |
CommandServiceManager.notifyService(URL serviceUrl,
URL registryUrl,
List<URL> urls) |
protected abstract void |
CommandFailbackRegistry.subscribeCommand(URL url,
CommandListener listener) |
protected abstract void |
CommandFailbackRegistry.subscribeService(URL url,
ServiceListener listener) |
protected abstract void |
CommandFailbackRegistry.unsubscribeCommand(URL url,
CommandListener listener) |
protected abstract void |
CommandFailbackRegistry.unsubscribeService(URL url,
ServiceListener listener) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
ServiceListener.notifyService(URL refUrl,
URL registryUrl,
List<URL> urls) |
void |
CommandServiceManager.notifyService(URL serviceUrl,
URL registryUrl,
List<URL> urls) |
| 构造器和说明 |
|---|
CommandFailbackRegistry(URL url) |
CommandServiceManager(URL refUrl) |
| 限定符和类型 | 字段和说明 |
|---|---|
protected URL |
DefaultResponseFuture.serverUrl |
protected URL |
AbstractReferer.serviceUrl |
protected URL |
AbstractProvider.url |
protected URL |
AbstractNode.url |
| 限定符和类型 | 方法和说明 |
|---|---|
URL |
URL.createCopy() |
URL |
Referer.getServiceUrl()
获取referer的原始service url
|
URL |
AbstractReferer.getServiceUrl() |
URL |
Node.getUrl() |
URL |
AbstractProvider.getUrl() |
URL |
AbstractNode.getUrl() |
static URL |
URL.valueOf(String url) |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
ApplicationInfo.addService(URL url)
已过时。
|
static void |
RpcStats.afterCall(URL url,
Request request,
boolean success,
long procTimeMills)
call after invoke the request
|
static void |
RpcStats.beforeCall(URL url,
Request request)
call before invoke the request
|
boolean |
URL.canServe(URL refUrl)
check if this url can serve the refUrl.
|
<T> Exporter<T> |
Protocol.export(Provider<T> provider,
URL url)
暴露服务
|
static Application |
ApplicationInfo.getApplication(URL url)
已过时。
|
static RpcStats.StatInfo |
RpcStats.getMethodStat(URL url,
Request request) |
static RpcStats.StatInfo |
RpcStats.getServiceStat(URL url) |
<T> Provider<T> |
ProviderFactory.newProvider(T proxyImpl,
URL url,
Class<T> clz) |
<T> Referer<T> |
Protocol.refer(Class<T> clz,
URL url,
URL serviceUrl)
引用服务
|
| 构造器和说明 |
|---|
AbstractExporter(Provider<T> provider,
URL url) |
AbstractNode(URL url) |
AbstractProvider(URL url,
Class<T> clz) |
AbstractReferer(Class<T> clz,
URL url) |
AbstractReferer(Class<T> clz,
URL url,
URL serviceUrl) |
DefaultProvider(T proxyImpl,
URL url,
Class<T> clz) |
DefaultResponseFuture(Request requestObj,
int timeout,
URL serverUrl) |
| 限定符和类型 | 字段和说明 |
|---|---|
protected URL |
AbstractServer.url |
protected URL |
AbstractClient.url |
| 限定符和类型 | 方法和说明 |
|---|---|
URL |
Channel.getUrl() |
| 限定符和类型 | 方法和说明 |
|---|---|
Client |
EndpointFactory.createClient(URL url)
create remote client
|
Server |
EndpointFactory.createServer(URL url,
MessageHandler messageHandler)
create remote server
|
void |
EndpointFactory.safeReleaseResource(Client client,
URL url)
safe release client
|
void |
EndpointFactory.safeReleaseResource(Server server,
URL url)
safe release server
|
void |
AbstractServer.setUrl(URL url) |
| 构造器和说明 |
|---|
AbstractClient(URL url) |
AbstractPoolClient(URL url) |
AbstractServer(URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
Client |
AbstractEndpointFactory.createClient(URL url) |
Server |
AbstractEndpointFactory.createServer(URL url,
MessageHandler messageHandler) |
protected abstract Client |
AbstractEndpointFactory.innerCreateClient(URL url) |
protected abstract Server |
AbstractEndpointFactory.innerCreateServer(URL url,
MessageHandler messageHandler) |
void |
AbstractEndpointFactory.safeReleaseResource(Client client,
URL url) |
void |
AbstractEndpointFactory.safeReleaseResource(Server server,
URL url) |
| 限定符和类型 | 方法和说明 |
|---|---|
static List<URL> |
UrlUtils.parseURLs(String address,
Map<String,String> defaults) |
| 限定符和类型 | 方法和说明 |
|---|---|
static boolean |
MotanFrameworkUtil.checkIfCanShallClientChannel(URL source,
URL target)
判断url:source和url:target是否可以使用共享的client channel(port) 对外提供服务
1) protocol
2) codec
3) serialize
4) maxContentLength
5) maxClientConnection
6) heartbeatFactory
|
static boolean |
MotanFrameworkUtil.checkIfCanShallServiceChannel(URL source,
URL target)
判断url:source和url:target是否可以使用共享的service channel(port) 对外提供服务
1) protocol
2) codec
3) serialize
4) maxContentLength
5) maxServerConnection
6) maxWorkerThread
7) workerQueueSize
8) heartbeatFactory
|
static String |
MotanFrameworkUtil.getProtocolKey(URL url)
protocol key: protocol://host:port/group/interface/version
|
static String |
MotanFrameworkUtil.getServiceKey(URL url)
目前根据 group/interface/version 来唯一标示一个服务
|
Copyright © 2017. All rights reserved.