HBase——HMaster启动之一(HMaster的构建)

  我们需要注意,下图所示的tool的类型就是HMasterCommandLine。



  HRegionServer的构造方法也比较长,下面通过三张图来展示:以下分别用RSG1、RSG2、RSG3来表示。

  首先我们来看RSG1中的setupNetty,如下图所示:

  我们可以看到,HMaster在构造时调用了其父类的构造方法RSRpcServices。








  这里的RpcExecutor实际类型为FastPathBalancedQueueRpcExecutor。
  来到Handler类,看到其继承自Thread,并且覆写了Thread的run方法。也就是说,在上面调用start方法的时候,这里的run方法开始运行。由于Handler的实际类型为FastPathHandler,因此,在真正运行时,下图调用的getCallRunner为FastPathHandler.getCallRunner。比较关心的同学可以自己看一下。在这一节重点并不是这里,就点到为止了。
  到现在为止,rpcServices的启动完成了,并且HMaster就可以处理HRegionServer或客户端发送来的请求了。各位同学可能还不清楚为什么。我在这里通过下面的图来简单介绍一下。客户端请求到服务端后,来到这里,将通过调用scheduler.dispatch,这里的sceduler也就是我在前面提到的SimpleRpcScheduler。由于刚刚handler已经启动完成,所有dispath后的所有请求,都可以由handler处理,而在上面,handler还没有启动,所以还没有办法处理。我在上面抛出的疑问也就解决了。至于以后的流程,我将在下一节详细介绍,欢迎大家关注。
HBase——HMaster启动之一(HMaster的构建)的更多相关文章
- HBase——HMaster启动之二(HMaster线程的调用)
		
紧接着上一节HMaster的构建完成.接下来会调用HMaster调用master.start(),master.join(). 由HMaster的继承关系,很明显,他是Runnable的子类.也就是说 ...
 - Hbase master启动报错:Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster  Caused by: java.net.UnknownHostException:
		
Hbase master启动报错: java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop ...
 - hmaster 启动后自动关闭
		
hbase重装后,hmaster却起不来,多次启动也不行,后来发现原因是在zookeeper中之前注册的hmaster仍然存在,系统中只允许一个hmaster运行.解决方法如下: 进入zk客户端,将h ...
 - 【HBase】知识小结+HMaster选举、故障恢复、读写流程
		
1:什么是HBase HBase是一个高可靠性,高性能,面向列,可伸缩的分布式数据库,提供海量数据存储功能,一个结构化的分布式存储系统,不同于一般的关系型数据库,它适合半结构化和非结构化数据存储. 2 ...
 - Hbase设置多个hmaster
		
Hbase设置多个hmaster https://www.cnblogs.com/prayer21/p/4866673.html
 - HBase配置&启动脚本分析
		
本文档基于hbase-0.96.1.1-cdh5.0.2,对HBase配置&启动脚本进行分析 date:2016/8/4 author:wangxl HBase配置&启动脚本分析 剔除 ...
 - Ambari部署HDP:HBase Master启动后自动消失
		
这是第一次出勤部署产品.遇到不可控问题,解决,写个心得.记录一下吧^^ 在排查问题的过程中,学到不少知识. (1)centos系统盘和数据盘分开,装操作系统的人没有将IT的空间分配出来,所以分区,自动 ...
 - HBase Master启动过程
		
master启动过程: -->首先初始化HMaster -->创建一个rpcServer,其中并启动 -->启动一个Listener线程,功能是监听client的请求,将请求放入ni ...
 - Hadoop、Hbase —— 服务启动、验证、停止
		
一.Hadoop 1.启动Hadoop cd /usr/local/hadoop-2.7.3/sbin ./start-dfs.sh 启动过程如下: 2.验证Hadoop是否启动成功 2.1.在主节 ...
 
随机推荐
- C#事务提交
			
using (System.Transactions.TransactionScope transcope = new System.Transactions.TransactionScope()) ...
 - TCP与UDP基本认识及区别
			
TCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少: 3.UDP程序结构较简单 4.流模式(TCP)与数据报模式(UDP); 5.TCP保证数据正确性,UDP可能丢包 ...
 - SpringSecurity入门demo
			
配置依赖: <properties> <spring.version>4.2.4.RELEASE</spring.version> </properties& ...
 - TwinStickShooter的一些问题
			
TwinStickShooter模板应该是比较好的了解UE基本Pawn和Projectile的一个C++例子.以下是一些问题. 一.这个模板以纯C++编写,没有蓝图,所以第一步,我想测试下如何引用蓝图 ...
 - tensorflow 源码编译
			
https://blog.csdn.net/xsfl1234/article/details/67669707 https://blog.csdn.net/guxi123/article/detail ...
 - 描点的改进:运用chart画图。
			
主要是利用Chart画图: 通过选中一部分曲线进行图像的放大和缩小,最小值为1格. 先计算最大值和最小差值.然后赋值给AxisY.Minimum 和AxisY.Maximum.x轴初始显示数目:Axi ...
 - 图解HTTP第三章
			
HTTP 报文内的 HTTP信息 用于 HTTP 协议交互的信息被称为 HTTP 报文.HTTP 报文本身是由多行(用 CR+LF 作换行符)数据构成的字符串文本. HTTP 报文大致可以分为两类:请 ...
 - 操作系统组成和工作原理以及cpu的工作原理
 - SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用
			
转:https://yq.aliyun.com/articles/42270 title: SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用 author: 石沫 背 ...
 - 02.02.02 第2章 制作power bi图表(Power BI商业智能分析)
			
---恢复内容开始--- 02.02.02第2章 制作power bi图表 02.02.02.01 power pivot数据导入 00:08:43 02.02.02.02建立数据透视表 00:11: ...