- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分布式系统开发实战
第3章ꢀ通信
2
进程间地通信是所有分布式系统地核心。
如果没有通信机制,分布式系统地各个子
系统将是一盘散沙,毫无作用。
柳伟卫《分布式系统开发实战》
3 本章学习
ꢀ 网络通信地基础知识。
ꢀ 常用地通信方式。
柳伟卫《分布式系统开发实战》
4 3.1 进程间通信
ꢀ 进程间通信(Inter-Process munication,IPC )指至少两个进程或线程间传送数
据或信号地一些技术或方法。
ꢀ 每个进程彼此是隔离地。为了能使不同地进程互相访问资源并进行协调工作,才有
了进程间通信。
ꢀ 这些进程可以运行在同一计算机上或网络连接地不同计算机上。进程间地通信技术
包括消息传递, 同步,共享内存与远程过程调用。
ꢀ 进程间通信是一种标准地UNIX通信机制。
ꢀ 进程间通信可以分为本地过程调用与远程过程调用。
柳伟卫《分布式系统开发实战》
5 3.1.1 本地过程调用地概念
ꢀ 本地过程调用(Local Procedure Call,LPC )是指被调用地过程(函数)与调用过程
处于同一个进程中。
柳伟卫《分布式系统开发实战》
6 3.1.2 本地过程调用地实现
ꢀ 服务端进程建立命名服务器连接端口对象,并等待客户端连接;
ꢀ 客户端通过向这一端口发送消息来建立连接;
ꢀ 如果服务端同意建立连接,便会建立两个无名端口:
ꢀ 客户端连接端口:客户线程由此向服务端发送数据;
ꢀ 服务端连接端口:服务端由此向客户端发送数据;每个客户端都分配一个独立地接
口;
ꢀ 服务端持有一个服务连接端口地句柄, 同时客户端也持有一个客户连接端口地句柄,
这样进程间通信地通道就建立了。
柳伟卫《分布式系统开发实战》
7 3.2 远程过程调用
ꢀ RPC是远程过程调用(Remote Procedure Call)地缩写形式。
ꢀ RPC是指计算机A上地进程,调用另外一台计算机B上地进程,其中A上地调用进程被
挂起,而B上地被调用进程开始执行,当值返回给A 时,A进程继续执行。调用方可
以通过使用参数将信息传送给被调用方,而后可以通过传回地结果得到信息。而这
一过程,对于开发人员来说是透明地。
ꢀ 远程过程调用采用客户机/服务器(C/S )模式。请求程序就是一个客户机,而服务
提供程序就是一台服务器。
ꢀ 与常规或本地过程调用一样,远程过程调用是同步操作,在远程过程结果返回之前,
需要暂时中止请求程序。使用相同地址空间地低权进程或低权线程允许同时运行多
个远程过程调用。
柳伟卫《分布式系统开发实战》
8 3.2.1 远程过程调用原理
柳伟卫《分布式系统开发实战》
9 3.2.2 如何实现远程过程调用
ꢀ 如何传递参数
ꢀ 如何表示数据
ꢀ 如何选用传输协议
ꢀ 出错时会发生什么
ꢀ 远程调用地语义是什么
ꢀ 远程调用地性能怎么样
您可能关注的文档
最近下载
- 上海市外籍人口空间分布历史变迁研究.pdf
- 至为芯科技IP5356规格书资料.pdf
- 学习党的二十届三中全会精神应知应会知识测试题AB卷(附答案).docx VIP
- 进位制-(公开课).ppt VIP
- 船舶电气作业安全操作规程.docx
- DB37T5267-2023钢丝网架(片)板现浇混凝土复合保温体系应用技术标准 .docx VIP
- 2024安全生产标准化管理体系新旧版本对比汇总版.docx
- 国家电网计算机类笔试学习资料-计算机网络.pdf VIP
- 人教版初中数学第十四章《整式的乘法与因式分解》解答题提高训练 (39)(含答案解析).docx VIP
- 公务员考试常识习题(带答案).doc VIP
文档评论(0)