我与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 ...
随机推荐
- Hapoop安装学习(第一天)
学习任务: 1.安装虚拟机 Linux使用版本为Centos7,共安装3台虚拟机,一台主机和两台从机.主机命名为master,两台从机分别命名为s1和s2. master分配磁盘空间30G,s1和s2 ...
- php 访问控制可见性 public protected private
对属性或方法的访问控制,是通过在前面添加关键字public(公有),protected(受保护的),private(私有)来实现. 被定义为公有的类成员可以在任何地方被访问. 被定义为受保护的类成员则 ...
- 20.LVS负载均衡群集—NAT模式实例
LVS负载均衡群集-NAT模式实例 目录 LVS负载均衡群集-NAT模式实例 群集引用概述 群集的含义 问题 解决方法 企业群集分类 群集的三种类型 负载均衡群集(Load Balance Clust ...
- 如何使用lerna进行多包(package)管理
为什么要用lerna 将大型代码仓库分割成多个独立版本化的 软件包(package)对于代码共享来说非常有用.但是,如果某些更改 跨越了多个代码仓库的话将变得很 麻烦 并且难以跟踪,并且, 跨越多个代 ...
- # 【由浅入深_打牢基础】WEB缓存投毒(上)
image-20220611092344882 [由浅入深_打牢基础]WEB缓存投毒(上) 1. 什么是WEB缓存投毒 简单的来说,就是利用缓存将有害的HTTP响应提供给用户 什么是缓存,这里借用Bu ...
- SAP APO-部署选项
SAP SCM Server安装提供SAP APO功能模块的所有功能. 在SAP APO的附加部署模型中,以下组件可用作SAP APO工具的一部分- OTE-在附加部署模型中,无法通过SAP SCM服 ...
- sap 获取设置的打印机参数
*&---------------------------------------------------------------------* *& Form FRM_SET_PRI ...
- ES5的继承和ES6的继承有什么区别?让Babel来告诉你
如果以前问我ES5的继承和ES6的继承有什么区别,我一定会自信的说没有区别,不过是语法糖而已,充其量也就是写法有区别,但是现在我会假装思考一下,然后说虽然只是语法糖,但也是有点小区别的,那么具体有什么 ...
- python小题目练习(十一)
题目:大乐透号码生成器 需求:使用Random模块模拟大乐透号码生成器,选号规则为:前区在1 ~ 35的范围内随机产生不重复 的5个号码,后区在1~ 12的范围内随机产生不重复的2个号码.效果如图8. ...
- Json多层级动态结构数据解析
一.工具 (1)GSON Google Gson是一个简单的基于Java的库,用于将Java对象序列化为JSON,反之亦然. 它是由Google开发的一个开源库. 以下几点说明为什么应该使用这个库 - ...