Center Topic
2015-10-15 10:52:22 9 举报
AI智能生成
”Center Topic”是一个英文短语,通常用于写作或讨论中,表示将注意力、讨论或研究的重点集中在一个特定的主题或问题上。这个主题通常是文章、报告、演讲或讨论的核心,所有的信息和观点都围绕这个主题展开。例如,如果你正在写一篇关于全球变暖的文章,那么”全球变暖的影响”可能就是你的”Center Topic”。在这个主题下,你可以详细讨论全球变暖对环境、人类生活以及全球经济等方面的影响。在讨论或辩论中,明确并坚持”Center Topic”也是非常重要的,它可以帮助你保持话题的连贯性和一致性,避免偏离主题。
作者其他创作
大纲/内容
new TaskTracker()
new AbstractJobNode()
实例化application
实例化DefaultConfig
nodeChangeListeners List
masterChangeListeners List
监控中心 [TaskTrackerMonitor]
Set Config Params
ZK/Redis RegistryAddress
NodeGroup / ClusterName
WorkThreads
monitor.url
Add Listeners
masterChangeListeners
MasterChangeListenerImpl [ master节点变化监听器]
Application配置
JobRunnerClass
start()
AbstractJobNode.initConfig
Application配置
EventCenter
jvm中的pub/sub简易实现 [InjvmEventCenter]
CommandBodyWrapper 用于设置CommandBody的基础信息
MasterElector
创建时间最小的便是master
addMasterChangeListener <masterChangeListeners>
RegistryStatMonitor [监控 注册中心的的可用状态]
实例化JobTrackerNode
nodeChangeListeners
SubscribedNodeManager 订阅的node管理
MasterElectionListener master选举的监听器
SelfChangeListener 监听自己节点变化(如,当前节点被禁用了)
preRemotingStart
AbstractClientNode.preRemotingStart
实例化NettyRemotingClient
HeartBeatMonitor [用来发送心跳包]
向事件中心注册事件 [_NODE_ADD_], 关注JobTracker节点单变化
发心跳,并给事件中心发[JOB_TRACKER_AVAILABLE]
stopFastPing
startPing
向事件中心注册事件[JobTracker不可用]
有[JobTracker不可用]事件,startFastPing
定时1s PullJob Request
定时30s 一次心跳
Application配置
RemotingClient
RunnerPool
向事件中心注册事件, 改变工作线程大小
JobPullMachine [向JobTracker取任务]
向事件中心注册事件, JOB_TRACKER的可用状态
Job可用状态
非可用状态
StopWorkingMonitor [当TaskTracker和JobTracker断开超过了一段时间,TaskTracker立即停止当前的所有任务]
remotingStart
RemotingClient.start()
NettyConnectManageHandler
NettyClientHandler
processMessageReceived
HeartBeatMonitor.start
startFastPing
定时1s HeartBeat --> stopFastPing & startPing
registerDefaultProcessor [在RemotingClient内配置默认的RequestProcessor以及对应的worker线程池]
afterRemotingStart
按配置StopWorkingMonitor.start()
Monitor.start() [监控中心 TaskTrackerMonitor]
initRegistry
初始化Registry
实例化ZookeeperRegistry
FailbackRegistry初始化
定时5s retry()
failedRegistered
doRegister
failedUnRegistered
doUnRegister
failedSubscribed
doSubscribe
failedUnsubscribed
doUnsubscribe
failedNotified
NotifyListener.notify
ZookeeperClient
ZkClientZookeeperClient链接ZK
RegistryStatMonitor.setAvailable(true)
add StateListener
ZK连接的状态变化,从而触发RegistryStatMonitor的isAvailable
ZookeeperRegistry.subscribe(node, NotifyListener) listTypes路径下child节点有发生变化时的notify
ZookeeperRegistry.register(node)
FailbackRegistry.register(node)
维护registered Set<Node>
doRegister
AbstractZookeeperClient.create(path) [ZK内新建path]
addShutdownHook
taskTracker.stop()
0 条评论
下一页