1.1 分布式计算的概念
1.1.1 定义
分布式计算是计算机科学的重要研究内容,主要研究对象是分布式系统 。简单地说,一个分布式系统是由若干通过网络互连的计算机组成的软硬件 系统,且这些计算机互相配合已完成一个共同的目标(往往这个共同的目标 称为“项目”)。 分布式计算的一种简单定义是在分布式系统上执行的计算。更为正式的 定义是,分布式计算研究如何把一个需要非常巨大的计算能力才能解决的问 题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把 各部分的计算结果合并起来得到最终的结果。本质上,分布式计算式一种基 于网络的分而治之的计算方式。
1.1.2 分布式计算的优缺点
优点:
- 低廉的计算机价格和网络访问的可用性。
- 资源共享。
- 可伸缩性。
- 容错性。
缺点:
- 多点故障。
- 安全性低。
1.2.3 分布式计算的相关计算形式
与分布式计算类型的计算形式有很多,下面讨论的单机计算机、并行计算、网络计算机、网络计算和云计算这五种形式,以便更好地区分和理解分布式计算的概念。
1.2 分布式系统概念
1.2.1 分布式系统的定义
分布式系统是指通过网络互连,可写作执行某个任务的独立计算机集合 。这个定义有两个方面的含义:第一,从硬件角度来讲,每台计算机都是自主 的;第二,从软件角度来讲,用户将整个系统看作一台计算机。这两者都是必 须的,缺一不可。
1.2.2 经典的分布式系统与项目
- www
- SETI@hone
- BOINC
- 其他分布式计算项目
1.2.3 分布式系统的特征
- 可靠性
- 可扩展性
- 可用性
- 高效性
- CAP理论
1.3 分布式计算的基础技术
1.3.1 进程间通信
分布式计算的核心技术是进程间通信(Iterprocess Communication,IPC),即在互联网独立的进程(进程是程序的运行时表示)间通信及共同协作以完成某项任务的能力。
1.3.2 IPC程序接口原型
- send(发送)
- receive(接收)
- connect(连接)
- disconect(断开连接)
1.3.3 时间同步
IPC中的一个难点是进行IPC的各相关进程是独立执行的,各进程不知道对方进程的情况。
- 同步send和同步receive
- 异步send和同步receive
- 同步send和异步receiive
- 异步send和异步receive
1.3.4 死锁和超时
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223604.html原文链接:https://javaforall.net
