文档章节

分布式计算范型

twins
 twins
发布于 2014/06/15 16:22
字数 764
阅读 36
收藏 0

分布式计算范型

    范型是一种模式,例子或者模型。SOA的基本思想是以服务为核心,将IT资源整合成可操作的,基于标准的服务,可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署,组合和使用。

    分布式计算环境由低到高的抽象层次依次为:消息传递(Socket API)->远程过程调用(RPC)-> 远程方法调用(RMI),对象请求代理(ORB)->分布式组件模型->面向服务架构(SOA).

    1.消息传递范型利用网络API,完成用户请求进行打包,传送和解包的工作,必要时还需考虑通信缓冲区操作及跨平台数据格式表示问题。

      消息传递通常分为面向无连接和面向连接的两种方式,面向无连接的通常是send和receive操作,面向连接的通常是connect和disconnect操作。互连进程间可以实现文本输入,输出等类似的操作。

    2. 远程过程调用。rpc通常通过使用某一类型的接口定义语言IDL描述接口来达到。通常指通过网络从远程计算机程序上请求服务,而不需要了解底层网络协议。在七层模型中,rpc协议跨越了传输层和应用层。rpc为开发网络分布式多程序提供了捷径。

    3.分布式对象范型。在分布式环境下,跨语言,跨平台的基于面向对象的分布式计算技术,是的对象用于可以在使用对象时访问网络上的任意有用对象,而不必知道对象的位置。分布式对象技术室构建业务应用框架和软件架构的核心技术,如COM+,SUN JAVABEANS/RMI, OMG,CORBA.

    4.分布式组件模型。 COM+, EJB, COM.

    5. 面向服务的体系结构。 为了实现重用性,松散耦合,粗粒度,互操作性等目标,SOA侧重于服务的发布,发现和使用。服务是现实世界中业务活动的一种抽象与建模。

进程间通信

    网络和分布式程序设计中,进程间通信(IPC)非常重要。通信分为两种,在同一节点上的通信包括管道,FIFO,信号,消息队列,共享内存。另一类是在不同节点上的通信方法,主要是套接字通信。

    可以讲Java理解为JVM进程,其进程间通信依靠系统调用来实现。Java欲实现进程间通信,可以使用RMI或者CORBA,而事实上,CORBA是通过RMI实现的,RMI又是通过Socket实现的,所以可以说,Java实现进程间通信最基本的手段是socket不为过。

    Java中,生产者和消费者模型,通过一个文件,映射共享内存区域获得。Java通道可以映射内存。

© 著作权归作者所有

共有 人打赏支持
twins
粉丝 5
博文 92
码字总数 27330
作品 0
哈尔滨
程序员
私信 提问
武汉月薪6K-10K招嵌入式和C++平台软件研发工程师

废话不多说,要求如下: 嵌入式应用高级研发工程师 例行条件: 1、本科及以上学历,5年及以上大型C/C++系统(30万行以上规模嵌入式系统)开发经验,具有独立思考系统局部架构的能力和相关工作...

fengsophie
2011/05/20
1K
7
学习笔记DL005:线性相关、生成子空间,范数,特殊类型矩阵、向量

线性相关、生成子空间。 逆矩阵A⁽-1⁾存在,Ax=b 每个向量b恰好存在一个解。方程组,向量b某些值,可能不存在解,或者存在无限多个解。x、y是方程组的解,z=αx+(1-α),α取任意实数。 A列...

利炳根
2017/11/21
0
0
preprocessing数据预处理

一、标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std 计算时对每个属性/每列分别进行。 将数据按期属性(按列进行)减去其均值,并处以其方差。得到的结果是,对于每个属性...

qq_15111861
2018/05/08
0
0
Python3机器学习实践:集成学习之CatBoost

CatBoost是俄罗斯的搜索巨头Yandex在2017年开源的机器学习库,是Gradient Boosting(梯度提升) + Categorical Features(类别型特征),也是基于梯度提升决策树的机器学习框架。 一、CatBoost技...

AiFan
2018/12/17
0
0
数学基础-高斯模型

在之前的一篇文章[机器学习-Bayesian概念学习,简书]中提到了一组常用的共轭分布,beta分布-二项分布,它们都是离散型的概率分布,而一组更一般的离散型共轭分布为Dirichlet分布-多项分布。共...

三余寻真
2015/01/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

mybaties中通用mapper的基本使用

使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQL。而且,当数据库表结构改动时,对应的所有SQL以及...

嘴角轻扬30
21分钟前
1
0
都996了,研发效能还是提不起来,关键在这里

上一篇我们介绍了研发效能提升目标及其度量方法。(本文是阿里“研发效能提升系列”的第2篇,第1篇“研发效能的定义和度量”敬请期待【下周三】的钉钉群直播:钉钉搜索群号 23192180) 研发效...

zhaowei121
21分钟前
1
0
阿里重磅开源首款自研科学计算引擎Mars,揭秘超大规模科学计算

日前,阿里巴巴正式对外发布了分布式科学计算引擎 Mars 的开源代码地址,开发者们可以在pypi上自主下载安装,或在Github上获取源代码并参与开发。 此前,早在2018年9月的杭州云栖大会上,阿里...

阿里云云栖社区
24分钟前
2
0
大牛是怎么思考设计SQL优化方案的?

在进行MySQL的优化之前,必须要了解的就是MySQL的查询过程,很多查询优化工作实际上就是遵循一些原则,让MySQL的优化器能够按照预想的合理方式运行而已。 图-MySQL查询过程 一、优化的哲学 ...

Java填坑路
33分钟前
1
0
docker1.7 Error: Path not specified 错误

在centos6.1上,用yum命令安装的docker版本是1.7 。在拷贝文件的时候报 Error: Path not specified错误。 错误消息“错误:路径未指定” 在docker1.8.0中已修复。 修复方法: 直接下载1.9.1...

applepaihs
33分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部