Hadoop中的RPC

在Hadoop的RPC调用中,用到了反射机制,但是这里我
   始终未能明白ReflectionUtils.newInstance()函数中如何构造参数类型的?
 try {
      Class<?> jobConfClass = 
        conf.getClassByName("org.apache.hadoop.mapred.JobConf");
      Class<?> jobConfigurableClass = 
        conf.getClassByName("org.apache.hadoop.mapred.JobConfigurable");
       if (jobConfClass.isAssignableFrom(conf.getClass()) &&
            jobConfigurableClass.isAssignableFrom(theObject.getClass())) {
        Method configureMethod = 
          jobConfigurableClass.getMethod("configure", jobConfClass);
        configureMethod.invoke(theObject, conf);

      }


 这里最让我困惑的是,Configuration做了什么工作,使得Method类的public Object invoke(Object obj, Object... args)方法通过conf参数构造RPC调用所需要的参数类型?  或者说,知道一个RPC方法,比如heartbeat, 
 当它被JT在本地执行的时候,它的参数构造是如何通过conf这个参数实现的?  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值