Java远程通讯可选技术及原理(二)

本文介绍了RMI、XML-RPC、Binary-RPC及SOAP等远程通信协议的工作原理与流程,包括数据传输格式、序列化方式及如何接收处理数据流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RMI

  RMI 是个典型的为java定制的远程通信协议,我们都知道,在single vm中,我们可以通过直接调用java object instance来实现通信,那么在远程通信时,如果也能按照这种方式当然是最好了,这种远程通信的机制成为RPC(Remote Procedure Call),RMI正是朝着这个目标而诞生的。

  来看下基于RMI的一次完整的远程通信过程的原理:

  1、客户端发起请求,请求转交至RMI客户端的stub类;

  2、stub类将请求的接口、方法、参数等信息进行序列化;

  3、基于socket将序列化后的流传输至服务器端;

  4、服务器端接收到流后转发至相应的skelton类;

  5、skelton类将请求的信息反序列化后调用实际的处理类;

  6、处理类处理完毕后将结果返回给skelton类;

  7、Skelton类将结果序列化

,通过socket将流传送给客户端的stub;
  8、stub在接收到流后反序列化,将反序列化后的Java Object返回给调用者。

  来看jboss-remoting对于此过程的一个更好的图示:

  根据原理来回答下之前学习应用级协议带着的几个问题:

  1、传输的标准格式是什么?

  是Java ObjectStream。

  2、怎么样将请求转化为传输的流?

  基于Java串行化机制将请求的java object信息转化为流。

  3、怎么接收和处理流?

  根据采用的协议启动相应的监听端口,当有流进入后基于Java串行化机制将流进行反序列化,并根据RMI协议获取到相应的处理对象信息,进行调用并处理,处理完毕后的结果同样基于java串行化机制进行返回。

  4、传输协议是?

  Socket。

XML-RPC

  XML-RPC也是一种和RMI类似的远程调用的协议,它和RMI的不同之处在于它以标准的xml格式来定义请求的信息(请求的对象、方法、参数等),这样的好处是什么呢,就是在跨语言通讯的时候也可以使用。

  来看下XML-RPC协议的一次远程通信过程:

  1、客户端发起请求,按照XML-RPC协议将请求信息进行填充;

  2、填充完毕后将xml转化为流,通过传输协议进行传输;

  3、接收到在接收到流后转换为xml,按照XML-RPC协议获取请求的信息并进行处理;

  4、处理完毕后将结果按照XML-RPC协议写入xml中并返回。

  图示以上过程:

  同样来回答问题:

  1、传输的标准格式是?

  标准格式的XML。

  2、怎么样将请求转化为传输的流?

  将XML转化为流。

  3、怎么接收和处理流?

  通过监听的端口获取到请求的流,转化为XML,并根据协议获取请求的信息,进行处理并将结果写入XML中返回。

  4、传输协议是?

  Http。

  --------------------------------------------------------------------------------------------------------------------------------------------------

Binary-RPC

  Binary-RPC看名字就知道和XML-RPC是差不多的了,不同之处仅在于传输的标准格式由XML转为了二进制的格式。

  同样来回答问题:

  1、传输的标准格式是?

  标准格式的二进制文件。

  2、怎么样将请求转化为传输的流?

  将二进制格式文件转化为流。

  3、怎么接收和处理流?

  通过监听的端口获取到请求的流,转化为二进制文件,根据协议获取请求的信息,进行处理并将结果写入XML中返回。

  4、传输协议是?

  Http。

  --------------------------------------------------------------------------------------------------------------------------------------------------
  SOAP

  SOAP 原意为Simple Object Access Protocol,是一个用于分布式环境的、轻量级的、基于XML进行信息交换的通信协议,可以认为SOAP是XML RPC的高级版,两者的原理完全相同,都是http+XML,不同的仅在于两者定义的XML规范不同,SOAP也是Webservice采用的服务调用协议标准,因此在此就不多加阐述了。

  --------------------------------------------------------------------------------------------------------------------------------------------------
CORBA

  Common Object Request Broker Architecture(公用对象请求代理[调度]程序体系结构),是一组用来定义“分布式对象系统”的标准,由OMG(Object Menagement Group)作为发起和标准制定单位。CORBA的目的是定义一套协议,符合这个协议的对象可以互相交互,不论它们是用什么样的语言写的,不论它们运行于什么样的机器和操作系统。
  CORBA在我看来是个类似于SOA的体系架构,涵盖可选的远程通信协议,但其本身不能列入通信协议这里来讲,而且CORBA基本淘汰,再加上对CORBA也不怎么懂,在此就不进行阐述了。
内容概要:该论文聚焦于T2WI核磁共振图像超分辨率问题,提出了一种利用T1WI模态作为辅助信息的跨模态解决方案。其主要贡献包括:提出基于高频信息约束的网络框架,通过主干特征提取分支和高频结构先验建模分支结合Transformer模块和注意力机制有效重建高频细节;设计渐进式特征匹配融合框架,采用多阶段相似特征匹配算法提高匹配鲁棒性;引入模型量化技术降低推理资源需求。实验结果表明,该方法不仅提高了超分辨率性能,还保持了图像质量。 适合人群:从事医学图像处理、计算机视觉领域的研究人员和工程师,尤其是对核磁共振图像超分辨率感兴趣的学者和技术开发者。 使用场景及目标:①适用于需要提升T2WI核磁共振图像分辨率的应用场景;②目标是通过跨模态信息融合提高图像质量,解决传统单模态方法难以克服的高频细节丢失问题;③为临床诊断提供更高质量的影像资料,帮助医生更准确地识别病灶。 其他说明:论文不仅提供了详细的网络架构设计与实现代码,还深入探讨了跨模态噪声的本质、高频信息约束的实现方式以及渐进式特征匹配的具体过程。此外,作者还对模型进行了量化处理,使得该方法可以在资源受限环境下高效运行。阅读时应重点关注论文中提到的技术创新点及其背后的原理,理解如何通过跨模态信息融合提升图像重建效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值