分布式计算通信技术解析
1. 通用对象请求代理架构(CORBA)
CORBA是对象管理组织(OMG)的标准,与Java RMI不同,它允许用户将几乎任何面向对象语言编写的程序互连。在分布式系统中使用多种编程语言的优势在于,每个程序都可以使用最适合其需求的语言编写。常见编程语言的适用场景如下:
| 编程语言 | 适用场景 |
| — | — |
| Java、C# | 经常在不同架构上执行的程序,它们被编译为中间格式(如字节码),需要虚拟机(VM) |
| Perl、Python | 源代码经常更改的程序,使用脚本语言,需要解释器 |
| C/C++ | 对性能要求高的程序,直接编译为目标硬件的二进制代码 |
CORBA的技术设置与RMI相似,本地和远程对象可以透明访问,且数据的编组和解组不在应用程序代码中。但CORBA系统中的所有计算机都必须运行对象请求代理(ORB),并且存在客户端存根和服务器端骨架的区别。CORBA中的存根和骨架是自动生成的,使用与语言无关的接口定义语言(IDL),由IDL编译器编译。ORB除了进行数据编组和解组外,还为分布式系统程序员提供各种服务,如分布式事务管理。因此,CORBA比RMI提供更多功能,但需要更多的设置工作来管理ORB。
2. 组件和服务容器
在大规模分布式系统编程方面,电子商务应用(如eBay和Amazon)积累了宝贵经验。构建网格应用标准通信技术的流行方法(如Globus和Unicore)开始采用与电子商务业务应用类似的中间件。使用应用服务器(容器)作为中间件的分布式系统,其拓扑结构与CORBA和RMI不同。服务器端只运行一个标准化的容器程序,应用特定部分由一个或多
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



