美文网首页
云渲染任务调度之优化

云渲染任务调度之优化

作者: _男猪脚 | 来源:发表于2019-07-07 23:10 被阅读0次

之前写了一篇关于云渲染集群监控与任务调度设计的文章,里面涉及到一部分任务调度,今天主要是对之前任务调度做一些可扩展性的优化,公司最近又打算采购30台服务器,之前那种单层应用的调度方式已经满足不了目前的集群规模以及吞吐量,因此必须对之前的任务调度重构和优化,以提高整个集群的吞吐量以及可靠性和高可用。
随着集群规模不停地壮大,单层应用调度迟早会达到瓶颈,所以想法就是把大集群拆分成若干个小集群,这样将压力分摊下来,提高整个集群调度的可扩展性,具体设计如下:


iray_schedule.png

a. IrayProphet: 任务管理应用,管理不同类型的任务出队,以及对外提供任务更新接口。
b. IraySchedule: 任务调度应用,分组管理渲染引擎和构建应用,负责任务的分发以及调度。
c. Construct: 任务构建服务,主要负责场景转换以及任务提交。
d. ConstructAgent:构建服务代理,主要接受任务并提交给构建服务进行场景转换,并上报任务构建状态。
e. IrayServer:渲染引擎,主要进行图片渲染工作。
f. IrayAgent:渲染引擎代理,主要负责监控任务渲染进度以及上报进度。

任务管理应用(IrayProphet)根据各调度节点(IraySchedule)上报的任务情况以及配置的阈值动态计算出相应出队任务数,并将出队的任务存入redis队列中,各调度应用节点(IraySchedule)根据集群内的空闲构建数取相应任务,并推送给相应构建代理(ConstructAgent),构建代理经过初始化工作之后,将任务推送给相应构建(Construct)进行场景转换,场景转换完成之后通知调度任务服务(IraySchedule),任务调度服务根据渲染引擎代理(IrayAgent)上报的空闲节点,分发场景转换后的任务给渲染引擎(IrayServer)进行渲染工作。
目前我们单个集群中,渲染引擎(IrayServer)20个节点,构建服务(Construct)15个节点,这样分配的原因在于单个任务构建时长比渲染时长要小,构建服务处理能力比渲染引擎强,因此这样分配达到一个平衡目的。

相关文章

  • 云渲染任务调度之优化

    之前写了一篇关于云渲染集群监控与任务调度设计的文章,里面涉及到一部分任务调度,今天主要是对之前任务调度做一些可扩展...

  • Android优化篇

    Android性能优化之渲染篇 - [ Android性能优化篇 [ 谷歌官方 ] ] - 看云 Android性...

  • 云渲染集群监控与任务调度设计

    首先说一下此项目的背景,公司主要从事互联网家居设计行业,所以最重要的就是室内设计,初期做的是离线渲染,设计师使用我...

  • IOS - UIView绘制流程 (displayLayer)(

    性能优化之 UI渲染优化 - 异步渲染 使用displayLayer进行异步绘制

  • Java定时任务调度工具详解

    本篇内容:什么是定时任务调度?Java定时任务调度工具详解之 Timer篇Java定时任务调度工具详解之 Quar...

  • 大数据数仓建设性能优化方案

    大数据数仓的性能优化主要围绕以下四个方面: 调度优化 模型优化 同步任务优化 计算任务优化下面将对着四方面的优化方...

  • Android优化文章精选

    Android性能优化典范 Android性能优化典范 - 第1季Android性能优化之渲染篇Android性能...

  • laravel之任务调度

    之前执行任务定时,都会用linux的crontab,现在框架用一条就可以帮你去执行了 增加定时 定义调度 场景:订...

  • 基于Runloop的任务管理器

    1、工具背景 在性能优化的过程中,除了方法耗时优化,任务调度执行的时机也很重要,有些任务必须要在主线程执行,有些任...

  • 定时任务调度之Timer

    定时任务调度之Timer 前言 定时任务调度,有两个比较重要的概念,一个是定时,一个是调度,所谓的定时调度,指的是...

网友评论

      本文标题:云渲染任务调度之优化

      本文链接:https://www.haomeiwen.com/subject/ornihctx.html