我与Apache DolphinScheduler的成长之路
关于 Apache DolphinScheduler社区
Apache DolphinScheduler(incubator) 于17年在易观数科立项,19年3月开源, 19 年8月进入Apache 孵化器,社区发展非常迅速,目前已有 400+ 公司在生产上使用,代码+文档贡献者近200位,社区用户4000 +人。DolphinScheduler (简称DS) 致力于使大数据任务调度开箱即用,它以拖拉拽的可视化方式将各种任务间的关系组装成 DAG(有向无环图),并实时监控整个数据pipeline的运行状态,同时支持失败重试、重跑、恢复失败、补数等大数据常用操作
主人翁介绍
向偲彪,易观数科高级前端开发工程师,从事前端开发已有 6 年多,目前主要负责前端基础架构及前端前沿技术的研究及前端开发。

一、成长简介
2019 年 9 月,怀着对开源热爱,我非常荣幸加入到易观数科,在公司大力支持开源的情况下,我也加入到 Apache DolphinScheduler 了社区,开启了 Apache 之旅。
刚接手 Apache DolphinScheduler 前端工作时,准备发 1.2.0 版本,当时了解到前端界面已经开发完成,前端没啥工作量,主要是改下前端代码里面的中文注释、测试一下流程能否跑通及修复一些小 bug,差不多就可以发版了。当时我心里不知道是喜还是忧,想着开源项目有这么简单么,当时也没多想,接着任务就开始干,但是我后面仔细了解了一下 DS 前端架构和代码结构,发现并没有想象中那么简单,按照 Apache 规范和引入的插件库协议根本没法发版(https://apache.org/legal/resolved.html#highlevel),icon 图标有自定义 icon 图标、阿里iconfont、font-awesome、ans-ui 自带 icon,插件库有引入公司源的、源文件形式引入、编译包形式引入,插件库等级低等问题,如果 DolphinScheduler 作为一个公司自己使用工具到是问题不大,但要在 Apache 上面发版基本不可能,因为一开始没有考虑这些规范问题,只是把功能实现了就可以啦。经过两个月的努力,将这些问题一一解决,我们在 2019 年 12 月下旬,正式在 Apache 成功发版了 1.2.0,后面陆续发版了 1.2.1、…、1.3.0、1.3.4 等 7 个版本,DolphinScheduler 也算是完成了从 0 到 1 转变,但这些远还没达到我们目标,我们目标是DolphinScheduler 向 Apache 顶级项目前进,给 DolphinScheduler 带来更好的用户体验,让 DolphinScheduler更加的易用。
在这一年多时间里,虽然我的成长非常快,贡献率排到了社区第一,但也给我带来很大压力,在壮大的同时,如何带动更多的开发者加入到 DolphinScheduler 社区,是目前比较棘手的问题,我希望有更多贡献者可以加入进来,尤其是前端的小伙伴非常缺。
二、前端开发计划
目前在 1.3.4 版本发布后,dev 分支增加了不少新特性,前端页面UI替换成了 element-ui,告警组将采用 form-create 插件化、dag 优化、新特性开发及前端架构的调整等开发计划,如果你对这些开发计划感兴趣,可以加我的个人微信号:break60,也可以关注我们公众号:海豚调度,希望有更多的热爱开源小伙伴们加入进来。
三、社区动态
DolphinScheduler 自开源以来,github 现已有 4.9k star,fork 量有1.7k,代码贡献者有 149 名,文档贡献者也有 49 位,微信群用户有 4000 + 人,虽然离我们预期有一定距离,但让我们欣慰的是,我们用户和关注度一直处于递增的状态,在这里离不开社区小伙伴们的长期支持,在此我们非常的感谢你们的支持,特别是一些长期的贡献者,如张伯毅小伙伴,长期为 DolphinScheduler 贡献 pr、社区答疑解惑、博客文档等,还有近期非常活跃程世文小伙伴,为 DolphinScheduler 贡献了不少pr。近期 DolphinScheduler 获得了 2020 年度开源中国最佳技术团队奖,这些都是小伙伴们长期贡献的结果,希望小伙伴们再接再厉,多增加自己的曝光量,我们一起为DolphinScheduler 再创佳绩,为中国开源做出自己的贡献。
Who’s using DolphinScheduler?
参与贡献
随着国内开源的崛起,DolphinScheduler迎来了蓬勃发展,为了做更好用的调度,真诚欢迎热爱开源的伙伴加入到开源社区中来,为中国开源崛起献上一份自己的力量,青春在开源上留下一点印记
参与 DolphinScheduler 社区有非常多的参与贡献的方式,包括:
贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度
社区汇总了以下适合新手的问题列表:https://github.com/apache/incubator-dolphinscheduler/issues/4124
如何参与贡献链接:https://dolphinscheduler.apache.org/zh-cn/docs/development/contribute.html
来吧,DolphinScheduler开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的
如果您想参与贡献,却发现上述方法都搞不明白,也没关系,我们有个开发者种子孵化群,可以添加微信(easyworkflow) 手把手教会您,添加时请说明想参与贡献哈
Apache DolphinScheduler开源社区非常期待您的参与
我与Apache DolphinScheduler的成长之路的更多相关文章
- 从开源小白到 Apache Member,我的成长之路
我们走过的每一步路,都会留下印记,越坚实,越清晰. 近日,Apache 软件基金会(ASF)官方 Blog 宣布全球新增 40 位 Apache Member,张乎兴有幸成为其中一位. 目前,全球共有 ...
- Apache DolphinScheduler&ShenYu(Incubating) 联合 Meetup,暖春 3 月与你相约!
云霞出海曙,梅柳渡江春. 2022 年的早春在疫情中显得格外生机勃勃,虽然接下来寒流仍有可能造访国内部分地区,但开源的世界,早已热闹非凡! 2022 年 3 月 26 日(星期六), Apache D ...
- 我在Apache DolphinScheduler的心路历练
摘要:Apache DolphinScheduler 目前是 Apache 孵化项目,目前正在快速发展中.加入Apache DolphinScheduler社区已一年多,已有 400+ 公司在生产上使 ...
- 活动回顾|Apache DolphinScheduler x Pulsar 在线 Meetup
关于 Apache DolphinScheduler: " Apache DolphinScheduler(Incubating) 是一个分布式去中心化.易扩展的可视化工作流任务调度系统,致 ...
- linux小白成长之路10————SpringBoot项目部署进阶
[内容指引] war包部署: jar包部署: 基于Docker云部署. 一.war包部署 通过"云开发"平台初始化的SpringBoot项目默认采用jar形式打包,这也是我们推荐的 ...
- python工程师成长之路精品课程(全套)
python工程师成长之路精品课程(全套) 有需要联系我:QQ:1844912514 什么是Python? Python是一门面向对象的编程语言,它相对于其他语言,更加易学.易读,非常适合快速开发. ...
- 架构师成长之路5.7-Saltstack数据系统
点击架构师成长之路 架构师成长之路5.7-Saltstack数据系统 1. Saltstack的两种数据系统 Grains Pollars 2. Saltstack数据系统---Grains Grai ...
- 架构师成长之路5.3-Saltstack配置管理(State状态模块)
点击架构师成长之路 架构师成长之路5.3-Saltstack配置管理(State状态模块) 配置管理工具: Pupper:1. 采用ruby编程语言:2. 安装环境相对较复杂:3.不支持远程执行,需要 ...
- Apache DolphinScheduler 3.0.0 正式版发布!
点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler 版本发布 2022/8/10 2022 年 8 ...
随机推荐
- 关于TornadoFx和Android的全局配置工具类封装实现及思路解析
原文地址: 关于TornadoFx和Android的全局配置工具类封装实现及思路解析 - Stars-One的杂货小窝 目前个人开发软件存在设置页面,可以让用户自定义些设置,但我发现,存储数据的代码逻 ...
- 【HEOI2014】大工程<虚树>
虚树 我们每天都用心思索着,这究竟是为了什么呢?我想我也不知道,只是觉得如果人不思考问题就很无聊. 我觉得虚树不是什么数据结构,就是一种技巧或者工具.它能把树中\(k\)个关键点以\(O(klogk) ...
- CabloyJS实现了一款基于X6的工作流可视化编辑器
介绍 文档演示:CMS审批工作流演示了如何通过JSON来直接创建一个工作流定义,通常用于为具体的业务数据生成预定义或内置审批工作流的场景 CabloyJS 4.8.0采用X6 图编辑引擎实现了一款工作 ...
- 运筹学笔记12 大M法
引入M,其中M是一个充分大的正数.由此,目标函数也改变为zM. 如此构造的线性规划问题我们记作LPM,称之为辅助线性规划问题,也即在原来的线性规划问题的基础上,改造了其等式约束条件,然后有对目标函数施 ...
- synchronized下的 i+=2 和 i++ i++执行结果居然不一样
起因 逛[博客园-博问]时发现了一段有意思的问题: 问题链接:https://q.cnblogs.com/q/140032/ 这段代码是这样的: import java.util.concurrent ...
- 25.MYsql数据库管理
MYsql数据库管理 目录 MYsql数据库管理 数据库基本操作 库和表 常用的数据类型 查看数据表结构 查看当前服务器的数据库 查看数据库中包含的表 查看表的结构 SQL语句 创建及删除数据库和表 ...
- JS:自增和自减
自增自减是一元操作符运算 1.++: 前置++:先把取值,再把变量的值加1 后置++:先把变量的值加1,再取值 2.--: 前置--:先把取值,再把变量的值加1 后置--:先把变量的值加1,再取值 v ...
- babeljs源码
babel.min.js!function(e,t){"object"==typeof exports&&"object"==typeof mo ...
- k8s之有状态服务部署基石(基础知识)
PV&PVC&HeadlessService 4.1.什么是无状态/有状态服务? 无状态服务: 1.没有实时的数据需要存储 (即使有,也是静态数据) 2.服务集群网络中,拿掉一个服务后 ...
- 抓到 Netty 一个隐藏很深的内存泄露 Bug | 详解 Recycler 对象池的精妙设计与实现
欢迎关注公众号:bin的技术小屋,如果大家在看文章的时候发现图片加载不了,可以到公众号查看原文 本系列Netty源码解析文章基于 4.1.56.Final版本 最近在 Review Netty 代码的 ...