Hadoop NameNode

NameNode 主要启动逻辑如下:

NameNode.initMetrics(conf, this.getRole());
		StartupProgressMetrics.register(startupProgress);

		if (NamenodeRole.NAMENODE == role) {
			startHttpServer(conf);
		}

		loadNamesystem(conf);

		rpcServer = createRpcServer(conf);

		if (NamenodeRole.NAMENODE == role) {
			httpServer.setNameNodeAddress(getNameNodeAddress());
			httpServer.setFSImage(getFSImage());
		}

		pauseMonitor = new JvmPauseMonitor(conf);
		pauseMonitor.start();
		metrics.getJvmMetrics().setPauseMonitor(pauseMonitor);

		startCommonServices(conf);


loadNamesystem

createRpcServer初始化一个NameNodeRpcServer

startCommonServices中启动了HTTPServer和RPCServer


NameNodeHttpServer


NameNodeRpcServer handling all of the RPC calls to the NameNode.

NameNodeRpcServer处理了NameNode的各种RPC请求(来自DataNode和Client)

构造函数的结构中已经说明了一切 一连好几组下面这种结构:

XXXProtocolServerSideTranslatorPB  XXXProtocolServerTranslator = 
                                new XXXProtocolServerSideTranslatorPB(this);
    
BlockingService XXXPbService = XXXProtocol
				.newReflectiveBlockingService(XXXProtocolServerTranslator);






配置项dfs.namenode.handler.count用来指定NameNodeRpcServer中Processor线程数



转载于:https://my.oschina.net/darionyaphet/blog/409912

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值