《分布式系统:概念与设计》一练习

简介: 本节书摘来华章计算机《分布式系统:概念与设计》一书中的第1章 ,(英) George Coulouris Jean DollimoreTim Kindberg Gordon Blair 著 金蓓弘 马应龙 等译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

练习

1.1 列出能被共享的五种类型的硬件资源和五种类型的数据或软件资源,并举出它们在实际的分布式系统中发生共享的例子。
1.2 在不参考外部时间源的情况下,通过本地网络连接的两台计算机的时钟如何同步?什么因素限制了你描述的过程的准确性?由互联网连接的大量的计算机的时钟是如何同步的?讨论该过程的准确性。
1.3 考虑1.2.2节讨论的大型多人在线游戏的实现策略。采用单一服务器方法表示多个玩家游戏状态的好处是什么?这存在什么问题以及如何解决?
1.4 一个用户随身携带可以无线连网的PDA,来到一个从没有到过的火车站。请给出建议:在用户不输入火车站的名称或属性的情况下,如何得到关于本地服务和火车站环境的情况?要解决哪些技术问题?
1.5 比较云计算和更传统的客户-服务器计算。云计算作为一个概念,有什么新的特点?
1.6 用万维网作例子说明资源共享、客户和服务器的概念。作为信息浏览的核心技术,HTML、URL和HTTP各自的优势和不足是什么?这些技术是否适合作为客户-服务器计算的基础?
1.7 用一种程序设计语言(例如C++)编写的一个服务器程序提供了一个BLOB对象的实现,该对象用于被不同语言(例如Java)编写的客户访问。客户计算机和服务器计算机可以有不同的硬件,但它们都连到企业内部网上。要使得一个客户对象调用服务器对象上的方法,请描述由于异构性的五个方面所带来的需要解决的问题。
1.8 一个开放的分布式系统允许添加新的资源共享服务(如练习1.7中的BLOB对象)并被多种客户程序访问。讨论在这个例子中,开放性的需求与异构性的需求在什么范围内有所不同。
1.9 假设BLOB对象的操作分成两类:用于所有用户的公共操作和仅对某些命名用户开放的受保护操作。阐述为确保只有命名用户才能使用保护操作所涉及的所有问题。假设调用一个受保护的操作,却获得了不能对所有用户公开的信息,将会引起什么问题?
1.10 INFO服务管理一个可能非常大的资源集,用户能通过互联网利用关键字(一个字符串名字)访问这些资源。讨论资源名字的设计方法,使得在服务中的资源数量增加时性能的损失最小。对INFO服务的实现提出建议,以避免在用户数量变得很大时性能出现瓶颈。
1.11 列出在客户进程调用服务器对象的方法时可能出现故障的三个主要软件组件,针对每一种情况给出一个故障例子。对组件的设计给出建议,使得它能容忍彼此的故障。
1.12 一个服务器进程维护一个共享的信息对象(如练习1.7中的BLOB对象)。讨论是否允许客户请求在服务器上并发执行。在它们并发执行时,给出可能在不同客户操作之间发生“干扰”的例子,说明如何避免这种干扰。
1.13 一个服务由几个服务器实现,试解释为什么资源能在它们之间传输。要实现客户的移动透明性,采用客户多播所有的请求到服务器组是否能获得满意的效果?
1.14 Web上的资源和其他服务用URL命名,缩略语URL是指什么?给出能用URL命名的三种不同的Web资源例子。
1.15 给出一个HTTP URL的例子。列出HTTP URL的主要成分,阐述各个成分是如何表示的,举例说明每个成分。在什么程度上HTTP URL是位置透明的?

相关文章
|
存储 监控 固态存储
硬盘对碎片整理的需求
【10月更文挑战第1天】硬盘对碎片整理的需求
447 4
|
人工智能 机器人 人机交互
哥大华人开发人脸机器人,照镜子自主模仿人类表情超逼真
【4月更文挑战第3天】哥伦比亚大学研究人员开发了一款名为Emo的机器人,能观察并模仿人类面部表情,实现更自然的人机交互。Emo配备26个面部执行器和高分辨率摄像头,通过“自我建模”学习模仿表情,并能预测人类表情变化。这一创新有望改善人机理解和响应情绪的能力,应用于教育、医疗等领域,但也引发了关于情感依赖和伦理问题的讨论。
557 4
哥大华人开发人脸机器人,照镜子自主模仿人类表情超逼真
|
存储 算法
树(Tree) - 概念与基础
树(Tree) - 概念与基础
|
机器学习/深度学习 编解码 API
深度学习+不良身体姿势检测+警报系统+代码+部署(姿态识别矫正系统)
深度学习+不良身体姿势检测+警报系统+代码+部署(姿态识别矫正系统)
|
计算机视觉
YOLOv11改进策略【Neck】| PRCV 2023,SBA(Selective Boundary Aggregation):特征融合模块,描绘物体轮廓重新校准物体位置,解决边界模糊问题
YOLOv11改进策略【Neck】| PRCV 2023,SBA(Selective Boundary Aggregation):特征融合模块,描绘物体轮廓重新校准物体位置,解决边界模糊问题
602 11
|
Go API 数据库
【Go 语言专栏】Go 语言中的 ORM 框架使用与比较
【4月更文挑战第30天】本文对比分析了Go语言中的常见ORM框架:GORM、XORM和BeeORM。GORM功能强大,支持复杂查询和关联关系处理,但可能影响性能;XORM以其简单易用和高性能受到青睐,但文档不全;BeeORM简洁高效,适合基础应用场景。选择ORM应考虑功能、性能、易用性和社区支持,根据项目需求进行评估和选择,以提升开发效率和应用性能。
1027 0
|
人工智能 小程序 前端开发
【一步步开发AI运动小程序】六、人体骨骼图绘制
随着AI技术的发展,阿里体育等公司推出的AI运动APP如“乐动力”、“天天跳绳”等,使云上运动会、线上健身等概念广受欢迎。本文将引导您从零开始,利用“云智AI运动识别小程序插件”,在小程序中实现类似功能,包括人体骨骼图的绘制原理及其实现代码,确保骨骼图与人体图像精准重合。下篇将继续介绍运动分析方法。
|
机器学习/深度学习 人工智能 监控
人工智能在医疗健康中的应用与挑战
本文旨在探讨人工智能(AI)技术在医疗健康领域的应用及其所面临的挑战。通过分析AI技术在疾病诊断、治疗计划制定、患者监护等方面的具体应用案例,揭示AI如何提高医疗服务的质量和效率。同时,指出数据隐私、算法偏见、法律责任等关键问题,并提出相应的解决策略。文章呼吁加强跨学科合作,确保AI技术的健康发展,以更好地服务于人类健康事业。
344 27
|
搜索推荐 Java Go
希尔排序:优化的插入排序
希尔排序:优化的插入排序
324 2
|
缓存 网络协议 网络安全
HTTPS性能受到多个因素的影响
HTTPS性能受到多个因素的影响
504 10