Ray分布式系统:设计细节与应用实践
1. 引言
在分布式计算领域,Ray是一个强大且灵活的框架。了解Ray的设计细节,如容错机制、资源管理、对象处理以及序列化技术等,对于高效使用Ray至关重要。这不仅有助于我们更好地控制和优化分布式任务,还能在面对各种故障和资源限制时做出更明智的决策。
2. 容错机制
容错性指的是系统处理从用户代码到框架本身或运行它的机器等各种故障的方式。Ray针对不同系统有不同的容错机制,但和许多系统一样,Ray无法从头节点故障中恢复。
- Ray架构 :Ray的架构由应用层和系统层组成,系统层包含三个主要组件:GCS(全局控制存储)、分布式调度器和分布式对象存储。除GCS外,其他组件都具有水平可扩展性和容错性。GCS是Ray架构的核心,它维护着系统的整个控制状态,目前是单点故障,运行在头节点上。使用GCS可以使系统层的其他组件无状态,简化了整体架构,也有利于容错和独立扩展。
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(应用层):::process --> B(系统层):::process
B --> C(GCS):::process
B --> D(分布式调度器):::process
B --> E(分布式对象存储):::process
- 远程函数容错 :远程函数不包含持久状态,恢复
超级会员免费看
订阅专栏 解锁全文

1112

被折叠的 条评论
为什么被折叠?



