hdfs(二)底层通信原理——rpc及动态代理

wl413911 wl413911     2023-03-09     311

关键词:

一、RPC(Remote Procedure Call  ) :远程过程调用

    1、RPC是远程过程调用协议,实现调用者和被调用者二地之间的连接和通信。其基本通信模型是基于client/server进程间相互通信模型 ,如图1所示。

                                 技术图片

                                               图 1    使用RPC调用完成远程调用示意图

    

   2、利用HADOOP的RPC框架实现Server和Client远程通信

      (1)定义一个接口    MyInterface

      技术图片

      (2) 定义接口的实现类

      技术图片

      (3)RPC Server

      技术图片

       (4) RPC client

      技术图片

      (5)运行结果

        先启动RPCServer,然后执行RPC Client :

          Server端:*****调用到了Server端*******

          Client端:Hello Trump

 

二、动态代理

   1、java的动态代理对象

      (*)类的名字前有$符号,表示这个类的对象是代理对象

      (*)是一种包装设计模式

      (*)可以增强类的功能

      2、动态代理对象的基本原理

                   技术图片

    

 

spring5学习笔记—“springaop底层原理(动态代理)”(代码片段)

SpringAOP底层原理(动态代理)一、AOP底层使用“动态代理”动态代理有两种情况第一种:有接口情况,使用JDK动态代理第二种:无接口情况,使用CGLIB动态代理动态代理即为创建(被增强类/实现类的... 查看详情

cglib动态代理原理及实现

...如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理... 查看详情

cglib动态代理原理及实现

...如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理... 查看详情

cglib动态代理原理及实现

...如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理... 查看详情

cglib动态代理实现及原理(代码片段)

...何实现动态代理呢,这就需要Cglib了。Cglib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与... 查看详情

cglib动态代理实现及原理(代码片段)

...何实现动态代理呢,这就需要Cglib了。Cglib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与... 查看详情

动态代理原理

Spring底层用了哪些技术?(第一工厂模式第二动态代理)//第一个参数是:类加载器ClassLoadercl=App.class.getClassLoader();//第二个参数:字节码对象数组//第二个参数是字节码对象数组,表示动态代理创建出来的那个对象,自动实现了... 查看详情

javajdk动态代理(aop)使用及实现原理分析

目录​一、什么是代理?二、Java动态代理类 三、JDK的动态代理怎么使用?四、动态代理怎么实现的?五、结论一、什么是代理?代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某... 查看详情

rpc原理及rpc实例分析

...由于各服务部署在不同的机器,服务间的调用免不了网络通信过程,服务消费方没调用一个服务都要写一坨网络通信相关的代码,不仅负责而且容易出错RPC(RemoteProcedureCall)远程过程调用能让我们像调用本地服务一样调用远程服务... 查看详情

[spring5]aop底层原理

AOP底层原理1.AOP底层使用动态代理(1)有两种情况动态代理第一种有接口的情况,使用JDK动态代理a.创建接口实现类代理对象,增强类的方法第二种没有接口的情况,使用CGLIB动态代理a.创建子类的代理对象ÿ... 查看详情

rpc

...sp;Hadoop中的RPCHadoop中各个节点之间的交互都是基于RPC的,底层原理同上面所描述的。hadoopRPC在上面的基础上做了高度的封装,对本地调用者仅仅暴露一个代理类,通过这个代理 查看详情

hdfs体系结构及存储原理

...过/+目录名称访问。  提到访问数据,就必须知道HDFS的通信协议。所有的HDFS通信协议都是构建在TCP/IP的基础之上,而且不同组件之间,通信协议会有些差别,比如,客户端向名称节点发起的TCP连接,是使用客户端的协议和名... 查看详情

rpc原理及实现

...候需要通过--就可以应用RPC框架的实现来解决。RPC会隐藏底层的通讯细节(不需要直接处理Socket通讯或Http通讯)RPC是一个请求响应模型。客户端发起请求,服务器返回响应(类似于Http的工作方式)RPC在使用形式上像调用本地函... 查看详情

大数据学习之hdfs的工作机制07

1:namenode+secondaryNameNode工作机制2:datanode工作机制 3:HDFS中的通信(代理对象RPC)下面用代码来实现基本的原理1:服务端代码packageit.dawn.HDFSPra.RPC.server;importjava.io.IOException;importorg.apache.hadoop.HadoopIllegalArgumentExce 查看详情

java动态代理的底层原理(代码片段)

点击关注公众号,实用技术文章及时了解1.代理模式代理模式是常用的设计模式之一,其特征是代理类与被代理类有相同的接口,代理类可以为被代理类方法执行进行前置后置处理,增强被代理类方法代理模式的... 查看详情

springaop底层原理(动态代理)-》aop概念及术语-》aop实现(代码片段)

...区:进去逛一逛~AOP-面向切面编程一、简述AOP二、AOP底层原理三、实现动态代理(案例)四、AOP术语五、AOP的注解方式实现一、简述AOPAOP——面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统... 查看详情

spring框架学习06——aop底层实现原理

在Java中有多种动态代理技术,如JDK、CGLIB、Javassist、ASM,其中最常用的动态代理技术是JDK和CGLIB。1、JDK的动态代理JDK动态代理是java.lang.reflect.*包提供的方法,必须要借助一个接口才能产生代理对象,对于使用业务接口的类,Sprin... 查看详情

一篇文章了解rpc框架原理

...概念RPC(RemoteProcedureCall)–远程过程调用,通过网络通信调用不同的服务,共同支撑一个软件系统,微服务实现的基石技术。使用RPC可以解耦系统,方便维护,同时增加系统处理请求的能力。上面是一个简单的软件系统结构... 查看详情