论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
云原生
›
软考:CORBA架构
软考:CORBA架构
冬雨财经
金牌会员
|
6 天前
|
显示全部楼层
|
阅读模式
楼主
主题
747
|
帖子
747
|
积分
2241
CORBA逾期了吗
CORBA指南
个人小结:
IPC,历程间通信,Socket应用在不同机器之间的通信
RPC是一种技能头脑而非一种规范
但站在八九十年代的当口,简朴来说,就是我在当地调用了一个函数,大概对象的方法,实际上是调用了远程机器上的函数,大概远程对象的方法,但是这个通信过程对于程序员来说是透明的,即到达了一种位置上的透明性。
RPC,远程过程调用中心件。
数据格式和编码不同
以前没有跨平台的语言
以是背面出现了CORBA架构,但是随着Java的出现,EJB框架,自身就支持了RPC调用。
RPC可以解决背景的瓶颈问题,就是说传统的RPC,必要特定的框架来支持。
说白了,就是如何通报对象,背面利用XML通报,再厥后,利用Web Service SOAP协议来形貌,通过HTTP、TCF大概传输协议进行通报。
CORBA
客户端和服务端架构下,分布式调用的产物。
ORB 对象请求代理,处理通信过程
IDL:接口形貌语言,共享接口界说,通过编译工具可以将IDL文件编译成多种语言的客户端stub代码和服务端skeleton代码。
分布式对象解决方案,解决的问题是什么?
分布式对象解决方案重要解决的问题包括:
跨平台通信
:分布式对象技能允许不同硬件平台、操作系统和编程语言之间的通信。它通过中心件来屏蔽网络硬件平台的差异性和操作系统与网络协议的异构性,使得应用软件能够比力平滑地运行于不同平台上。
对象间的方法调用
:在分布式系统中,对象大概分布在不同的所在空间和网络节点上。分布式对象解决方案允许这些对象之间进行方法调用,就像它们在同一个历程中一样。
数据划一性
:在分布式系统中,由于数据分布在不同的节点上,保证数据的划一性是一个挑衅。分布式对象解决方案通过事务管理和锁机制来确保数据的划一性。
容错性和可靠性
:分布式系统大概面临节点故障的问题。分布式对象解决方案通过冗余和故障转移机制来进步系统的容错性和可靠性。
扩展性
:随着数据量的增长,系统必要动态扩展以顺应不断增长的需求。分布式对象解决方案支持通过添加更多的节点来扩展系统,从而进步存储容量和处理能力。
安全性
:分布式系统必要保护数据免受未授权访问和篡改。分布式对象解决方案提供数据加密和访问控制等安全功能来保护数据的安全性。
分布式事务处理
:在跨多个数据库或服务的事务操作中,必要保证事务的划一性、隔离性、长期性和原子性。分布式对象解决方案提供了如两阶段提交(2PC)、三阶段提交(3PC)和Try-Confirm-Cancel(TCC)等分布式事务解决方案。
分布式锁
:为了解决分布式系统中的并发问题,确保在多个节点上同时访问共享资源时的数据划一性和安全性,分布式对象解决方案提供了分布式锁机制,如基于Redis或Zookeeper的分布式锁。
性能优化
:分布式对象存储解决方案关注系统的性能优化,包括网络延迟、磁盘I/O、CPU利用率等方面的优化,以进步系统的整体性能和相应速度。
元数据管理
:在分布式对象存储中,元数据的管理至关重要,因为它包含了关于对象的信息,如名称、大小、创建时间、修改时间以及存储位置等。高效的元数据管理系统能够快速相应客户端的查询请求,并指导数据访问路径,进步数据访问的效率和正确性。
这些解决方案使得分布式系统能够更加灵活、可扩展、可靠和安全地处理大规模数据和复杂的计算使命。
Java语言本身跨平台,Java RMI只专注于一种语言的解决方案,编写简朴。无需CORBA那样为了适配各种语言而引入IDL。 这句话怎么理解?
这句话重要在比力Java RMI(Remote Method Invocation)和CORBA(Common Object Request Broker Architecture)两种分布式计算技能,夸大了Java RMI在特定场景下的优势。下面是对这句话的详细解释:
Java语言本身跨平台:
Java语言设计之初就提出了“一次编写,随处运行”(Write Once, Run Anywhere,简称WORA)的理念。这意味着用Java编写的程序可以在不同的操作系统上运行,而无需修改代码。这是因为Java程序在运行时会被编译成字节码(.class文件),这些字节码可以在任何安装了Java虚拟机(JVM)的平台上执行。
Java RMI专注于Java语言:
Java RMI是一种Java特有的技能,它允许Java程序调用运行在其他Java虚拟机上的Java对象的方法。由于RMI是为Java语言设计的,因此它不必要像CORBA那样支持多种编程语言。
编写简朴:
Java RMI的API相对简朴,Java开发者可以比力直观地利用它来实现远程方法调用。开发者只必要继承java.rmi.Remote接口并实现相应的远程接口,然后利用java.rmi.server.UnicastRemoteObject类来导出远程对象,就可以进行远程调用了。
无需CORBA那样的IDL:
CORBA是一种更为通用的分布式计算框架,它支持多种编程语言。为了实现不同语言之间的互操作性,CORBA引入了接口界说语言(Interface Definition Language,简称IDL)。IDL是一种独立于编程语言的接口形貌语言,它界说了远程对象的接口。开发者必要利用IDL来界说接口,然后利用IDL编译器生成不同语言的存根代码(Stubs和Skeletons),以实现不同语言之间的通信。
相比之下,Java RMI不必要IDL,因为它只关注Java语言。Java RMI在编译时主动生成远程对象的存根代码,这简化了开发过程,淘汰了开发者必要编写的代码量。
总结来说,这句话夸大了Java RMI在Java语言环境下的优势:它利用了Java的跨平台特性,提供了一种简朴直观的方式来实现Java程序之间的远程方法调用,而无需像CORBA那样为了支持多种语言而引入复杂的IDL机制。这使得Java RMI在纯Java环境中的分布式计算变得更加容易和高效。
RPC和目前的Web Rest关系对比
RPC(Remote Procedure Call,远程过程调用)是一种允许一个程序(客户端)通过网络向另一个程序(服务器)请求服务的协议。它使得开发者可以像调用当地函数一样调用远程服务器上的函数或方法,而无需关心底层网络通信的细节
。
HTTP + JSON + REST是一种常见的Web服务实现方式。HTTP是一种应用层通信协议,JSON(JavaScript Object Notation)是一种轻量级的数据互换格式,而REST(Representational State Transfer)是一种软件架构风格,用于设计网络服务。RESTful API通常利用HTTP动词(如GET、POST、PUT、DELETE)来操作资源,并通过URI(Uniform Resource Identifier)来标识资源的位置
。
RPC和HTTP + JSON + REST的关系和区别重要体如今以下几个方面:
通信协议:
RPC可以利用多种传输协议,如TCP、UDP、HTTP等,而HTTP + JSON + REST重要基于HTTP协议。
RPC的通信协议可以自界说,而HTTP是一种标准化的协议。
数据格式:
RPC可以利用多种数据格式,如XML、JSON、Protocol Buffers等,而HTTP + JSON + REST通常利用JSON作为数据互换格式。
JSON因其轻量级和易于利用,成为RESTful API最常用的数据格式。
服务左券:
RPC通常必要一个接口界说语言(IDL)来界说服务接口,而RESTful API的服务左券是通过HTTP方法和URL来界说的。
RESTful API的接口设计遵照REST原则,夸大资源的概念,而RPC更侧重于函数或操作的调用。
跨语言能力:
RPC框架如gRPC支持多种语言,可以实现跨语言的服务调用,而RESTful API由于基于HTTP和JSON,也具有很好的跨语言能力。
开发和利用:
RPC框架通常提供了客户端存根和服务器端骨架的生成,简化了远程调用的开发。例如,gRPC利用Protocol Buffers作为其接口界说语言,并能生成多种语言的存根代码
。
RESTful API的开发通常更直观,因为它基于HTTP方法和资源的概念,易于理解和利用。
实用场景:
RPC得当于必要高度抽象和封装的分布式系统内部通信,可以提供更丰富的远程调用功能。
RESTful API得当于构建面向公众的Web服务,因为它简朴、易于理解和利用,且易于与HTTP缓存、代理等Web底子设施集成。
总的来说,RPC和HTTP + JSON + REST都是实现分布式系统和服务导向架构的有效本领,选择利用哪种技能取决于详细的应用场景和需求。RPC提供了更多的控制和灵活性,而HTTP + JSON + REST则以其简朴性和广泛的实用性而流行。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
冬雨财经
金牌会员
这个人很懒什么都没写!
楼主热帖
ts保姆级教程,别再说你不会ts了 ...
Elasticsearch学习系列五(零停机索引 ...
信息与网络安全期末复习(完整版) ...
Linux安装PHP8 新版笔记
Pod概述
如何通过JDBC访问MySQL数据库?手把手 ...
有趣的特性:CHECK约束
SignalR 2 与mvc 5实现实时聊天功能 ...
《ABP Framework 极速开发》教程首发 ...
React技术栈 --》 JSX语法书写JS和Reac ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表