摘要: 详情见各种小图片: 事情起因,分不出哪里是实现父类,哪些是什么…overwrite注解有点蛋疼 阅读全文
posted @ 2015-08-18 19:18 闫昆 阅读(1262) 评论(0) 推荐(0) 编辑
摘要: public static void main(String argv[]) { Thread.setDefaultUncaughtExceptionHandler(new YarnUncaughtExceptionHandler()); StringUtils.startupShutdownMessage(ResourceManager.class, a... 阅读全文
posted @ 2015-08-18 19:11 闫昆 阅读(246) 评论(0) 推荐(0) 编辑
摘要: org.apache.hadoop.util.GenericOptionsParser mark 主要解析命令行传递给RM的参数,没什么好分析的用的Hadoop Cli工具,将命令工具参数设置到了YarnConfiguration当中 /** * Modify configuration according user-specified generic options... 阅读全文
posted @ 2015-08-18 17:13 闫昆 阅读(539) 评论(0) 推荐(0) 编辑
摘要: RM源码中实现了一个有序并有优先级的Hook,ShutdownHookManager相比JVM本身的执行Hook方式具有如下两种特性(默认JVM执行,无序,并发)1.顺序2.有优先级++++++++类被初始化时候执行1.设置shutdownInProgress标示2.执行Hook按照调度优先级pri... 阅读全文
posted @ 2015-08-18 16:29 闫昆 阅读(3002) 评论(0) 推荐(0) 编辑
摘要: 启动日志打印:入口 主要打印:见红色字体处,也就是日志当中的信息 StringUtils.startupShutdownMessage(ResourceManager.class, argv, LOG); /** * Print a log message for starting up and shutting down * @param clazz th... 阅读全文
posted @ 2015-08-18 15:38 闫昆 阅读(946) 评论(0) 推荐(0) 编辑
摘要: 看到RM在处理异常的时候使用了两种退出方式,而且是针对不同的异常。特意查询了一些资料来看看,两种方式有什么不同。System.exit终止当前正在运行的Java虚拟机。参数作为状态代码,按照惯例,一个非零状态码表示异常终止。用线程描述,在多线程情况下,可能更准确一些1.调用方法后,线程会退出2.未捕... 阅读全文
posted @ 2015-08-18 15:13 闫昆 阅读(3099) 评论(0) 推荐(0) 编辑
摘要: 总结一下: Thread.setDefaultUncaughtExceptionHandler(new YarnUncaughtExceptionHandler()); 方法主要记录,异常日志信息,并且记录完成后退出。 public static void main(String argv[]) { Thread.setDefaultUncaught... 阅读全文
posted @ 2015-08-18 11:44 闫昆 阅读(496) 评论(0) 推荐(0) 编辑
摘要: 刚刚看到ResourceManager源码第一行,就遇到了比较陌生的用法,特意研究一下,如何使用? 看源码的目标不就是学习,更好的来完善自己的代码,而不是面试时候的谈资。 下面是一个自己写的demo,setDefaultUncaughtExceptionHandler作用相当于一个全局的catch。一般情况下用于记录当程序发生你未捕获的异常的时候,调用一个你默认的handler来进行某些... 阅读全文
posted @ 2015-08-18 11:05 闫昆 阅读(7568) 评论(0) 推荐(0) 编辑