一、关于Cron-Job

业内已经有很多类似的调度平台,为什么我会再自研一个?主要有以下几点的考虑:

1. 构建自己的产品
  • 光说不练假把式,有些路自己走一遍才深有体会,考虑太多、纠结太多只会内耗而停滞不前。
  • 我希望有一个自己的产品,精心打磨,坚定不移的持续做下去(当然并不只做这一件事,我还想做更多其他事),并把它发扬光大,虽然这很难,但我觉得这值得尝试,最终哪怕没到预期,也是一场不错的人生体验。
  • 让更多的用户喜欢我的产品,是我很有成就感的事情,并且我享受它给我带来的成就感。
2. 用户体验与效率
  • 让用户的接入更加简单,只需要代码上打上注解,就可以完成自动注册,不需要额外的配置,只需要点击开始即可。
  • 管理后台UI更加精美简洁,并优化了管理后台的交互逻辑,理解和使用更加简单(为此,我专门学了前端React相关技术)。
  • 更加全面且有结构化的官方文档,尽可能让用户一目了然,自主接入和部署,而不需要过多研究和提问。
3. 增强横向扩展能力
  • 多租户的接入能力,只需要部署一套调度平台,即可接入公司内所有业务线。
  • 横向扩展的能力,支持集群多节点部署,即可支持更大的并发量和任务量。
4. 毫秒级的调度延迟
  • 基于提前调度策略,抹平服务器时间差、网络延迟等因素,使任务的执行更加及时,实际测试为个位数毫秒级别(执行器的GC和性能)。
  • 基于ACK确认、失败重试、过期调度等策略,使任务的执行更加准确、可靠,当然也可以通过配置不要失败重试。
5. 管理后台的安全性
  • 精心设计权限管理的功能,可控制到接口的权限级别,任务的安全性更加可靠,多租户间权限隔离。
  • 后台管理接口的交互、执行器和调度器之间的openApi交互,均采用签名校验机制,避免参数篡改、伪造和重放等问题。
6. 问题的排查效率
  • 管理后台提供更多维度的日志详情,能够帮助用户更好的理解任务的执行情况,并且能够更好的排查问题。
7. 云原生能力
  • 规划中…

二、关于提问

  • 我很乐意分享和交流探讨,但提问之前请先看文档或者日志,并经过思考之后提出有意义的问题。
  • 如果你准备提出“为什么不行“,”昨天还好好的“,诸如此类毫无意义的问题,我可能不会理你。
  • 提问前最好带上具体场景、错误日志等相关信息,以便更好解决你的问题。
  • 另外,学会提问是一项重要的能力,与编码能力同等重要,都是属于解决问题的能力。

三、关于作者

  • 毕业于移动应用开发专业,没正经做过移动开发工作,但很多年前赚到过一份接Android外包的钱😂。
  • 工作10年+,毕业后一直做服务端相关工作,经历过初创公司和国内大厂,目前就职于国内某上市互联网企业。
  • 经历过百万日活的高并发项目,踩过的坑都积累成了自己的经验。
  • 做过3年以上技术管理,带过30人成熟技术团队,也从0到1组建过初创团队。
  • 喜欢折腾技术,有一种誓不罢休的感觉,感兴趣的东西经常折腾到半夜。
  • 也喜欢”带队打仗“,带领团队一起完成项目,是我很有成就感的事情,如果还是一帮志同道合的人,那会让我很兴奋。

四、联系我

  • 邮箱:Horace_DH@163.com (注明来意)。
  • 微信:Horace_2020,加我备注"Cron-Job"
最后更新