剑客
关注科技互联网

唯品会弹性调度任务系统产品理念与设计实践

本文为参加的中生代技术广州场的演讲稿

唯品会弹性调度任务系统产品理念与设计实践

首先自我介绍下,我是邱戈川(一般文章署名了哥),来自唯品会平台架构部,是基础平台的技术产品经理。

唯品会弹性调度任务系统产品理念与设计实践

今天讲的内容是关于唯品会的自己研发的弹性调度系统产品,近期将开源出来与大家见面

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

我们打造这个产品的最大初衷是代替现有的php的crontab中的作业,但是现在延伸到了本地作业和消息驱动作业

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

本地作业模式是我们比较有创新的地方,好处是只要做一次的作业配置,后续无论上线多少台机器都会自动运行这些作业,做到自动维护。举个例子,如每台机器都要做些半夜的清理工作如删除日志文件等

唯品会弹性调度任务系统产品理念与设计实践

自动负载平衡是目前业界的产品中都看不到的,包括现在阿里云和腾讯云提供的产品。最大的好处是自动将不同负荷的作业分布到不同的机器运行,尽可能做到不同的机器负载均等。

唯品会弹性调度任务系统产品理念与设计实践

这是我们的基本算法,目前已经做过专利保护申请。不过不影响后续开源使用。

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

容器化的方案中,最大的考虑点是使用常驻类型还是即时销毁类型。目前我们的选择是常住类型,这样的好处是确保作业都有资源运行,从而确保业务不会因为资源争抢问题出错。但是资源的复用可以通过不同的容器实例数动态伸缩达到。

唯品会弹性调度任务系统产品理念与设计实践

利用DC/OS(Marathon+Mesos)的方案构件容器话方案,好处是简单,通过集成Marathon的接口就可以实现,无需改动太多原有的非容器方案

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

容器的引入,对于运维流程是个挑战,毕竟工作管理模式都发生了变化

唯品会弹性调度任务系统产品理念与设计实践

架构上比较干净,唯一需要考虑的是如何设计容器的网络方案。从定时作业的角度看,作业只需要连接出去,而无需被外部访问,所以Docker原生的NAT方式就够了

唯品会弹性调度任务系统产品理念与设计实践

我们的经典例子供大家参考。

唯品会弹性调度任务系统产品理念与设计实践

唯品会弹性调度任务系统产品理念与设计实践

希望加入我们的别忘了这个邮件地址!

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址