public class ClientRemoting extends ClientContext implements Constants
| 限定符和类型 | 字段和说明 |
|---|---|
static ServerService |
serverService |
clientConfig, clientMonitor, clientRemoting, clientService, httpService, proxyService, zookeeperAVAILABLE_PROCESSORS, BLANK, BLANK_SPLIT, CENTER_UNIT, CHAR_AMOUNT, COLON, COMMA, COMMA_ENCODED, COOKIE_NAME_CLUSTER, decimalFormat, DEFAULT_ADVANCE_THREADS, DEFAULT_CHARSET, DEFAULT_CONFIG_CLIENT_DATA_ID, DEFAULT_CONNECTION_TIMEOUT, DEFAULT_CONSUMER_QUEUE_SIZE, DEFAULT_CONSUMER_THREAD_AMOUNT, DEFAULT_CORE_FIRE_THREADS, DEFAULT_GROUP_SERVER_AMOUNT, DEFAULT_HEART_BEAT_CHECK_TIMEOUT, DEFAULT_HEART_BEAT_INTERVAL_TIME, DEFAULT_INSTANCE_NAME, DEFAULT_INVOKE_TIMEOUT, DEFAULT_LISTENER_PORT, DEFAULT_LOAD_MESSAGE_INTERVAL_TIME, DEFAULT_LOAD_MESSAGE_THREADS, DEFAULT_MAX_ACTIVE, DEFAULT_MAX_FIRE_THREADS, DEFAULT_PAGE_SIZE, DEFAULT_POLL_TIMEOUT, DEFAULT_REMOTING_THREADS, DEFAULT_ZK_CONNECTION_TIMEOUT, DEFAULT_ZK_ROOT_PATH, DEFAULT_ZK_SESSION_TIMEOUT, EQUAL_CHAR, FILE_SEPARATOR, FIRE_QUEUE_SIZE, FORWARD_SLASH, HOME_PATH, HORIZONTAL_LINE, INCREASE_RATE, INIT_DELAY, LEVEL_QUEUE_SIZE, LOGGER_KEY, MAX_RETRY_COUNT, NEWLINE, NULL, PATTERN, POINT, PULL_SLEEP_TIME, REQUEST_CODE, ROLE_TYPE_CONSUMER, ROLE_TYPE_PRODUCER, SEPARATOR, SPLIT_CHAR, SPLIT_POINT, SPLIT_STR, SPLIT_STRING, STAGE_FALSE, STAGE_TRUE, STATUS_RUNNING, STATUS_STOP, TABLE_AMOUNT, TIME_FORMAT_CHART, TIME_FORMAT_HOUR, TIME_FORMAT_MILLISECONDS, TIME_FORMAT_SECONDS, TIME_FORMAT_STRING, TMQ_ACTIVE_REGION, TMQ_BASE_SECTION, TMQ_COMPRESSION_REGION, TMQ_CONFIG, TMQ_CONFIG_FILE, TMQ_DATA, TMQ_DATA_COMPRESSION_EXT, TMQ_DATA_ENABLE, TMQ_DATA_EXT, TMQ_ENVIRONMENT_CONFIG_DATA_ID, TMQ_LEVEL_DAY, TMQ_LEVEL_HOUR, TMQ_LEVEL_MONTH, TMQ_LEVEL_YEAR, TMQ_MASTER_DATA, TMQ_MESSAGE_TABLE_NAME, TMQ_NEW_REGION, TMQ_OLD_REGION, TMQ_SLAVE_DATA, TRACE_LOGGER_NAME, UNDERLINE, USER_HOME, WILDCARD, ZK_CLIENT_CLUSTER, ZK_CONSOLE_CLUSTER, ZK_SERVER_CLUSTER| 构造器和说明 |
|---|
ClientRemoting() |
| 限定符和类型 | 方法和说明 |
|---|---|
String |
acquireFireServer(String messageKey)
获取该消息要触发的那台Server
messageKey
|
String |
acquireRandomServer()
随机获取Server
|
void |
connectServer(String instanceName,
String server,
int roleType,
String roleId,
String topic,
String tag)
连接服务器
instanceName
server
roleType
roleId
topic
tag
|
void |
disconnectServer(String instanceName,
String server,
int roleType,
String roleId,
String topic,
String tag)
断开服务器连接
instanceName
server
roleType
roleId
topic
tag
|
io.netty.channel.Channel |
getAndCreateChannel(String addr)
获取连接
addr
InterruptedException
|
List<String> |
getbackupServerList() |
AtomicLong |
getCounter(ConcurrentHashMap<String,AtomicLong> heartBeatCounter,
String key)
多线程环境同一个key拿到同一个counter
key
|
List<String> |
getServerList()
从ZK获取服务器列表
|
void |
increaseCounter(ConnectionChannel connectionChannel)
心跳计数器递增
connectionChannel
|
void |
init()
初始化
InitException
|
void |
initConnection(String instanceName,
int roleType,
String roleId,
String topic,
String tag)
初始化连接
向服务端所有机器建立长连接
instanceName
roleType
roleId
topic
tag
InitException
|
RemotingCommand |
invokeSync(String addr,
RemotingCommand request,
long timeoutMillis)
远程方法同步调用
addr
request
timeoutMillis
InterruptedException
RemotingConnectException
RemotingSendRequestException
RemotingTimeoutException
|
static <T> T |
proxyInterface(Class<T> interfaceClass)
代理接口
interfaceClass
|
void |
removeConnection(String instanceName,
int roleType,
String roleId,
String topic,
String tag)
清除连接
instanceName
roleType
roleId
topic
tag
InitException
|
void |
setCachedBackupServerList(List<String> cachedBackupServerList) |
void |
setCachedServerList(List<String> cachedServerList) |
initClientpublic static ServerService serverService
public void init()
throws InitException
InitExceptionpublic void initConnection(String instanceName, int roleType, String roleId, String topic, String tag) throws InitException
InitExceptionpublic void removeConnection(String instanceName, int roleType, String roleId, String topic, String tag) throws InitException
InitExceptionpublic void connectServer(String instanceName, String server, int roleType, String roleId, String topic, String tag)
public void disconnectServer(String instanceName, String server, int roleType, String roleId, String topic, String tag)
public String acquireRandomServer()
public static <T> T proxyInterface(Class<T> interfaceClass)
public io.netty.channel.Channel getAndCreateChannel(String addr) throws InterruptedException
public RemotingCommand invokeSync(String addr, RemotingCommand request, long timeoutMillis) throws InterruptedException, RemotingConnectException, RemotingSendRequestException, RemotingTimeoutException
public AtomicLong getCounter(ConcurrentHashMap<String,AtomicLong> heartBeatCounter, String key)
public void increaseCounter(ConnectionChannel connectionChannel)
Copyright © 2018. All rights reserved.