### 西电分布式计算课程(PPT总结版)笔记知识点详解 #### 一、通信技术 **1.1 分布式计算基础** - **通信技术的重要性:** 在分布式计算领域,节点之间的高效通信是实现高性能计算的核心。文档重点介绍了几种通信技术: - **底层通信技术:** 包括TCP/UDP这样的点对点通信技术。 - **并发服务技术:** 如多线程和线程池等。 - **上层通信技术:** 比如基于消息中间件的通信技术。 **1.2 TCP/IP 与 OSI 模型** - **TCP/IP 协议栈的发展背景:** TCP/IP 先于OSI模型出现,其结构更为实用且简化了网络编程。 - **四层模型:** - **应用层:** 提供应用程序所需的高级服务。 - **传输层:** 主要负责端到端的数据传输,典型协议有TCP和UDP。 - **网络层:** 处理IP地址并进行路由选择。 - **接口层:** 负责物理通信,如以太网或Wi-Fi。 - **简化网络编程:** 每一层都提供特定功能,便于开发人员按需选择合适的层次进行编程。 **1.3 套接字(Socket)编程** - **套接字介绍:** 套接字是传输层和网络层提供给应用层的标准化编程接口。 - **类型:** - **流式套接字:** 基于TCP协议,提供可靠的、面向连接的服务。 - **数据报套接字:** 基于UDP协议,提供不可靠的、无连接的服务。 - **原始套接字:** 直接访问底层协议,灵活性高但使用复杂。 - **标识:** 通常使用五元组来唯一标识一个套接字:本地IP地址、本地端口号、远程IP地址、远程端口号和协议类型。 **1.4 通信模式** - **基于消息中间件的通信技术:** 如ActiveMQ、RabbitMQ等,提供分布式消息队列服务,支持异步通信。 - **Web Service 技术:** 通过HTTP协议实现不同节点之间的互操作,定义了一系列标准。 - **事件驱动模型+单线程:** 结合事件驱动模型和单线程提高系统吞吐量。 - **其他并发服务技术:** Proactor模型和协程模型,增强系统的解耦合度。 #### 二、并发服务技术 **2.1 基于多线程的并发服务** - **特点:** - **动态创建与销毁:** 灵活性高但带来额外开销。 - **资源消耗:** 频繁创建和销毁线程导致CPU时间和内存的消耗。 - **管理复杂性:** 手动管理线程生命周期增加编程难度。 - **线程安全问题:** 多线程环境下易发生数据竞争和一致性问题。 **2.2 基于线程池的并发服务** - **特点:** - **提高效率:** 通过重用线程减少开销。 - **资源管理:** 线程池有效管理线程资源,降低资源消耗。 - **可控性:** 通过配置参数调整性能和资源使用。 - **简化编程:** 减少编程复杂度,使代码更简洁易维护。 - **同步与异常处理:** 提供同步机制和支持优雅的异常处理。 **2.3 事件驱动模型配合单线程** - **事件驱动模型:** 结合线程池提高系统吞吐量。 - **特点:** - **单线程处理:** 通过事件循环处理多个请求,减少线程切换开销。 - **异步处理:** 支持非阻塞IO操作,提高并发能力。 #### 三、远程过程调用与远程方法调用 **3.1 RPC 与 RMI** - **远程过程调用(RPC):** - **概念:** 允许远程调用过程或服务,如同本地调用。 - **语言无关性:** 客户端和服务端可使用不同编程语言。 - **协议与架构:** 没有固定实现,如gRPC使用HTTP/2和ProtoBuf。 - **灵活性:** 适用于多种网络环境,但实现复杂。 - **远程方法调用(RMI):** - **概念:** Java RMI是JDK提供的一套RMI中间件。 - **面向对象特性:** 扩展面向对象编程模型至分布式环境。 - **协议与架构:** 实现跨进程、跨语言、跨网络的过程调用。 - **灵活性:** 支持多种网络协议和数据序列化格式。 #### 四、分布式存储与计算框架 文档还提及了分布式存储和计算框架,包括: - **MapReduce:** Google提出的分布式数据处理模型,用于大规模数据集的并行处理。 - **Spark:** Apache Spark是一种用于大规模数据处理的开源集群计算框架,提供了比MapReduce更快的数据处理速度。 #### 总结 本文档全面介绍了分布式计算领域的关键技术点,包括通信技术、并发服务技术、远程过程调用与远程方法调用等内容。通过学习这些知识点,读者可以深入理解分布式计算的基本原理和技术实现,并为进一步研究和实践打下坚实的基础。
2025-05-14 21:49:32 2.59MB 课程资源 分布式计算
1
Kafka的搭建文档 及整合Flume
2022-06-05 19:08:42 2KB kafka 综合资源 分布式
1
Kafka以及安装文档
2022-05-14 19:06:13 46.82MB kafka 综合资源 分布式
1
zookeeper及其安装文档
2022-05-14 18:05:18 17.45MB zookeeper 综合资源 分布式 云原生
1
apache kafka 大数据 windows linux通用版
2022-05-06 09:08:38 84.05MB kafka 综合资源 分布式 apache
查看Windows文件资源分布情况
2022-02-22 18:01:27 4.68MB windows
1
基于leaflet插件的全球风资源分布粒子展示框架,通过粒子系统展示风速、风向以及粒子的颜色展示温度。
2022-02-18 22:30:21 5.12MB leaflet粒子
1
根据文献资料及专家经验,设定典型能源植物对温度、水分、坡度和土壤等条件的限制阈值,综合考虑能源作物生长所需适宜性条件并结合以上数据,获得亚洲宜能边际土地资源分布数据集。数据结果表明,亚洲宜能边际土地资源总面积为1699.55万平方公里。数据检验以中国能源植物种植示范基地华南植物园和武汉植物园为地面验证数据,精度均高于85%,说明了亚洲宜能边际土地资源数据集的可靠性,中国以外区域暂未进行验证。该数据集为亚洲能源植物规模化种植及生物能源可持续发展提供来了重要的数据支持。
2021-09-27 12:01:38 1.33MB 亚洲 边际土地 生物能源 植物
行业分类-网络游戏-基于无线网络中资源分布式存储与下载方法.zip
行业分类-网络游戏-P2P网络的资源分布表的共享方法.zip
2021-09-10 19:03:36 127KB 行业分类-网络游戏-P2P网络的