| 程序包 | 说明 |
|---|---|
| net.hasor.rsf |
RSF 分布式RPC框架。
|
| net.hasor.rsf.address |
地址管理 & 服务路由 & 流量控制。
|
| net.hasor.rsf.address.route.flowcontrol.random |
流控规则:随机选址。
|
| net.hasor.rsf.address.route.flowcontrol.speed |
流控规则:QoS限流
|
| net.hasor.rsf.address.route.flowcontrol.unit |
流控规则:单元化流量分组
|
| net.hasor.rsf.domain.provider |
提供
AddressProvider接口以及实现。 |
| net.hasor.rsf.domain.warp |
框架中所有的warp类,warp实际上就是静态代理。
|
| net.hasor.rsf.protocol.http_hprose |
Hprose Http RPC协议 数据包编码器和解码器。
|
| net.hasor.rsf.rpc.caller |
本地发出的远程调用所使用的“请求响应管理器”。
|
| net.hasor.rsf.rpc.caller.remote |
RSF框架接收远程请求所使用的“请求调用管理器”。
|
| net.hasor.rsf.rpc.context |
RSF服务框架容器环境,
RsfContext接口的实现。 |
| net.hasor.rsf.rpc.net |
负责处理RSF节点间的连接并保障网络通信。
|
| net.hasor.rsf.rpc.net.http |
Http 网络连接器。
|
| net.hasor.rsf.rpc.net.netty |
Netty 网络连接器。
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
RsfContext.bindAddress(String protocol)
获取RSF运行的地址。
|
InterAddress |
RsfSettings.getBindAddressSet(String protocolName)
获取本地服务绑定地址
|
InterAddress |
RsfRequest.getRemoteAddress()
获取发送请求的远程服务器使用的地址和端口,如果是本地发起的该地址则是本地RSF的地址。
|
InterAddress |
RsfRequest.getTargetAddress()
获取请求准备发送的目标地址(如果是分布式调用该方法会返回null)
|
| 限定符和类型 | 方法和说明 |
|---|---|
List<InterAddress> |
RsfUpdater.queryAllAddresses(String serviceID)
获取所有地址(包括本地的和无效的)。
|
List<InterAddress> |
RsfUpdater.queryAvailableAddresses(String serviceID)
获取计算之后可用的地址。
|
List<InterAddress> |
RsfUpdater.queryInvalidAddresses(String serviceID)
失效地址。
|
List<InterAddress> |
RsfUpdater.queryLocalUnitAddresses(String serviceID)
获取计算之后同一单元地址。
|
| 限定符和类型 | 方法和说明 |
|---|---|
RsfPublisher.RegisterBuilder<T> |
RsfPublisher.RegisterBuilder.bindAddress(InterAddress rsfAddress,
InterAddress... array)
远程地址例:“rsf://127.0.0.1:8000/unit”或“rsf://127.0.0.1:8000/unit/group/name/version”
|
RsfPublisher.RegisterBuilder<T> |
RsfPublisher.RegisterBuilder.bindAddress(InterAddress rsfAddress,
InterAddress... array)
远程地址例:“rsf://127.0.0.1:8000/unit”或“rsf://127.0.0.1:8000/unit/group/name/version”
|
boolean |
InterAddress.equalsHost(InterAddress evalResult)
判断连接地址是否是同一个。
|
RsfClient |
RsfContext.getRsfClient(InterAddress target) |
void |
RsfUpdater.removeAddress(InterAddress address)
某一个地址不可用了,从所有服务中删除这个地址
|
void |
RsfUpdater.removeAddress(String serviceID,
InterAddress invalidAddress)
将服务的地址设置成临时失效状态,把地址从服务的地址本中彻底删除。
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
RsfUpdater.appendAddress(String serviceID,
Collection<InterAddress> newHostSet)
新增或追加更新服务地址信息。
|
void |
RsfUpdater.appendStaticAddress(String serviceID,
Collection<InterAddress> newHostSet)
新增或追加更新服务静态本信息,静态服务地址是永久'有效'地址。
|
void |
RsfUpdater.refreshAddress(String serviceID,
List<InterAddress> addressList)
刷新服务的地址本,使其使用全新的地址本。
|
void |
RsfUpdater.removeAddress(String serviceID,
Collection<InterAddress> invalidAddressSet)
将服务的地址设置成临时失效状态,把地址从服务的地址本中彻底删除。
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
AddressPool.nextAddress(String serviceID,
String methodName,
Object[] args)
从服务地址本中获取一条可用的地址。
|
| 限定符和类型 | 方法和说明 |
|---|---|
Map<String,List<InterAddress>> |
AddressPool.allServiceAddressToSnapshot()
所有服务地址快照功能,该接口获得的数据不可以进行写操作。
|
List<InterAddress> |
AddressBucket.getAllAddresses()
获取所有地址(包括本地的和无效的)。
|
List<InterAddress> |
AddressBucket.getAvailableAddresses()
获取计算之后可用的地址。
|
List<InterAddress> |
AddressBucket.getInvalidAddresses()
失效地址。
|
List<InterAddress> |
AddressBucket.getLocalUnitAddresses()
获取计算之后同一单元地址。
|
List<InterAddress> |
AddressPool.queryAllAddresses(String serviceID) |
List<InterAddress> |
AddressPool.queryAvailableAddresses(String serviceID) |
List<InterAddress> |
AddressPool.queryInvalidAddresses(String serviceID) |
List<InterAddress> |
AddressPool.queryLocalUnitAddresses(String serviceID) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
AddressPool.appendAddress(String serviceID,
InterAddress newHost)
新增或追加更新服务地址信息。
|
void |
AddressPool.appendStaticAddress(String serviceID,
InterAddress newHost)
新增或追加更新服务地址信息。
|
void |
AddressPool.invalidAddress(InterAddress address)
将服务的地址设置成临时失效状态。
|
void |
AddressBucket.invalidAddress(InterAddress newInvalid,
long timeout)
将地址置为失效的(对于静态地址,该方法无效)。
|
void |
AddressPool.removeAddress(InterAddress address) |
void |
AddressBucket.removeAddress(InterAddress address)
将地址从地址本中删除。
|
void |
AddressPool.removeAddress(String serviceID,
InterAddress invalidAddress)
将服务的地址设置成临时失效状态,把地址从服务的地址本中彻底删除。
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
AddressPool.appendAddress(String serviceID,
Collection<InterAddress> newHostSet)
新增或追加更新服务地址信息。
|
void |
AddressPool.appendStaticAddress(String serviceID,
Collection<InterAddress> newHostSet)
新增或追加更新服务地址信息。
|
void |
AddressBucket.newAddress(Collection<InterAddress> newHostSet,
AddressTypeEnum type)
新增地址支持动态新增
|
void |
AddressPool.refreshAddress(String serviceID,
List<InterAddress> addressList) |
void |
AddressBucket.refreshAddressToNew(List<InterAddress> addressList) |
void |
AddressPool.removeAddress(String serviceID,
Collection<InterAddress> invalidAddressSet)
将服务的地址设置成临时失效状态,把地址从服务的地址本中彻底删除。
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
RandomFlowControl.getServiceAddress(List<InterAddress> addresses)
使用随机规则选取备选地址中的一个地址。
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
RandomFlowControl.getServiceAddress(List<InterAddress> addresses)
使用随机规则选取备选地址中的一个地址。
|
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
SpeedFlowControl.callCheck(String serviceID,
String methodName,
InterAddress doCallAddress) |
| 限定符和类型 | 方法和说明 |
|---|---|
List<InterAddress> |
UnitFlowControl.siftUnitAddress(String unitName,
List<InterAddress> address)
筛选本机房地址
|
| 限定符和类型 | 方法和说明 |
|---|---|
List<InterAddress> |
UnitFlowControl.siftUnitAddress(String unitName,
List<InterAddress> address)
筛选本机房地址
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
AddressProvider.get(String serviceID,
String methodName,
Object[] args)
根据服务ID获取地址
|
InterAddress |
PoolAddressProvider.get(String serviceID,
String methodName,
Object[] args) |
InterAddress |
InstanceAddressProvider.get(String serviceID,
String methodName,
Object[] args) |
| 构造器和说明 |
|---|
InstanceAddressProvider(InterAddress interAddress) |
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
AbstractRsfRequestWarp.getRemoteAddress() |
InterAddress |
AbstractRsfRequestWarp.getTargetAddress() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
HproseHttpHandler.sendRequest(InterAddress server,
RequestInfo info,
HttpHandler.SenderBuilder builder) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
SenderListener.sendRequest(InterAddress toAddress,
RequestInfo info,
SendCallBack callBack)
向远端发送请求。
|
void |
SenderListener.sendResponse(InterAddress target,
ResponseInfo info,
SendCallBack callBack)
向远端发送响应数据。
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
RemoteRsfCaller.onRequest(InterAddress target,
RequestInfo info)
收到Request请求,并将该请求安排进队列,由队列安排方法调用。
|
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
AbstractRsfContext.bindAddress(String protocol) |
InterAddress |
DefaultRsfSettings.getBindAddressSet(String protocolName) |
| 限定符和类型 | 方法和说明 |
|---|---|
RsfClient |
AbstractRsfContext.getRsfClient(InterAddress target) |
| 限定符和类型 | 方法和说明 |
|---|---|
InterAddress |
Connector.getBindAddress()
监听的本地端口号
|
InterAddress |
RsfChannel.getTarget()
获取远程连接的地址
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected abstract void |
Connector.connectionTo(InterAddress target,
net.hasor.utils.future.BasicFuture<RsfChannel> channelFuture)
连接到远程机器
|
Future<RsfChannel> |
Connector.getOrConnectionTo(InterAddress target)
建立或获取和远程的连接(异步+回调)
|
abstract void |
ReceivedAdapter.receivedMessage(InterAddress form,
RequestInfo request)
从远端收到RequestInfo消息。
|
abstract void |
ReceivedAdapter.receivedMessage(InterAddress form,
ResponseInfo response)
从远端收到Response消息。
|
| 构造器和说明 |
|---|
RsfChannel(InterAddress target,
LinkType linkType) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
HttpConnector.connectionTo(InterAddress hostAddress,
net.hasor.utils.future.BasicFuture<RsfChannel> channelFuture) |
void |
HttpHandler.sendRequest(InterAddress requestHost,
RequestInfo info,
HttpHandler.SenderBuilder builder)
准备向外发送 http request 请求。
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
NettyConnector.connectionTo(InterAddress hostAddress,
net.hasor.utils.future.BasicFuture<RsfChannel> result)
连接到远程机器
|
Copyright © 2020–2021. All rights reserved.