Center Topic
2015-10-15 10:52:22 4 举报
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
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
doRegister
AbstractZookeeperClient.create(path) [ZK内新建path]
addShutdownHook
taskTracker.stop()
0 条评论
下一页