sia-task

82天突破1000star,项目团队梳理出软件开源必须注意的8个方面

笑着哭i 提交于 2019-12-03 10:54:47
近期,我们在GitHub上开源了微服务任务调度框架SIA-TASK,82天,收获了1000+个star!由于这是SIA团队第一次开源项目,开源的相关工作,团队之前并没有太多的经验,因此我们特别整理了本次开源的各种记录事项,希望给今后开源的项目做参考。 关键步骤 开发 协议 安全扫描 文档 版本号 开源 后期 迭代 下面我们逐个步骤进行阐述。 一、开发 在开源项目的开发过程中要注意以下几点: 首先,要给自己的项目取一个合适的名字,取名规则这里不再赘述,需要强调的一点是:项目名称不能与GitHub上已开源过的项目名称相同。 其次,选择合适的编程语言。 再次,编码过程中要注意代码的规范。 最后要说的就是开源协议的选择了,目前最流行的开源协议有以下六种:GPL、BSD、MIT、Mozilla、Apache和LGPL。 不同的开源协议之间的差别还是挺大的,具体如何选择,可以参考 一张图看懂开源协议 ( https://blog.csdn.net/cwt19902010/article/details/53736746),如果这些常用的开源协议都不适合你的项目,你也可以自己写一个自己的开源协议。 为了更方便查看开源协议选择图,参考图如下 以Apache License Version 2.0协议为例,比较常用协议与Apache协议冲突情况,冲突图如下: 二、协议 项目开发完成之后

宜信微服务任务调度平台建设实践|分享实录

吃可爱长大的小学妹 提交于 2019-12-01 04:53:47
导读:如今,无论是互联网应用还是企业级应用,都充斥着大量的批处理任务,常常需要一些任务调度系统帮助我们解决问题。随着微服务化架构的逐步演进,单体架构逐渐演变为分布式、微服务架构。 在此背景下,很多之前的任务调度平台已经不能满足业务系统的需求,于是出现了一些基于分布式的任务调度平台。这些平台各有其特点,但也各有不足之处,比如不支持任务编排、与业务高耦合、不支持跨平台等问题,不是非常符合公司的需求,因此我们开发了微服务任务调度平台(SIA-TASK)。本次分享主要围绕SIA平台展开,包括研发背景设计思路和技术架构,以及如何支持业务方。 内容来源:宜信技术学院第4期技术沙龙-线上直播|宜信微服务任务调度平台建设实践 主讲人:宜信高级架构师 开发平台负责人 梁鑫 一、SIA-TASK的产生 1.1 背景 无论是互联网应用还是企业级应用,都充斥着大量的批处理任务,常常需要一些任务调度系统帮助我们解决问题。随着微服务化架构的逐步演进,单体架构逐渐演变为分布式、微服务架构。 在这样的背景下,很多之前的任务调度平台或组件已经不能满足业务系统的需求,于是出现了一些基于分布式的任务调度平台。这些平台各有其特点,但也各有不足之处,比如不支持任务编排、与业务高耦合、不支持跨平台等问题。 1.2 种类 按照任务与时间的关系,我们把批处理任务分成三类,飞机型、地铁型、公共汽车型。 飞机型是指每年/月/周

宜信开源|分布式任务调度平台SIA-TASK的架构设计与运行流程

妖精的绣舞 提交于 2019-12-01 04:53:37
一、分布式任务调度的背景 无论是互联网应用或者企业级应用,都充斥着大量的批处理任务。我们常常需要一些任务调度系统来帮助解决问题。随着微服务化架构的逐步演进,单体架构逐渐演变为分布式、微服务架构。在此背景下,很多原先的任务调度平台已经不能满足业务系统的需求,于是出现了一些基于分布式的任务调度平台。 1.1 分布式任务调度的演进 在实际业务开发过程中,很多时候我们无可避免地需要使用一些定时任务来解决问题。通常我们会有多种解决方案:使用 Crontab 或 SpringCron (当然这种情况可能机器很少而且任务简单又不是很多的情况下)。然而,当应用复杂度升高、定时任务数量增多且任务之间产生依赖关系时,Crontab 进行定时任务的管理配置就会非常混乱,严重影响工作效率。这时就会产生一系列问题: 任务管理混乱,生命周期无法统一协调管理; 任务之间如果存在依赖关系,难以编排。 随着互联网的发展,分布式服务架构势越来越流行。相应的也需要一个分布式任务调度系统来管理分布式架构中的定时任务。 1.2 分布式任务调度架构 当垂直应用越来越多,应用之间交互也会越来越复杂,通常我们采用分布式或者微服务架构,将核心业务抽取出来,形成单独的服务。一个独立的微服务群体逐渐形成稳定的服务中心,使得业务应用能更快地响应多变的市场需求。 此时,用于提高业务复用及整合的分布式服务框架成为关键。同时,由于服务独立

82天突破1000star,项目团队梳理出软件开源必须注意的8个方面

只愿长相守 提交于 2019-11-29 04:11:52
近期,我们在GitHub上开源了微服务任务调度框架SIA-TASK,82天,收获了1000+个star!由于这是SIA团队第一次开源项目,开源的相关工作,团队之前并没有太多的经验,因此我们特别整理了本次开源的各种记录事项,希望给今后开源的项目做参考。 关键步骤 开发 协议 安全扫描 文档 版本号 开源 后期 迭代 下面我们逐个步骤进行阐述。 一、开发 在开源项目的开发过程中要注意以下几点: 首先,要给自己的项目取一个合适的名字,取名规则这里不再赘述,需要强调的一点是:项目名称不能与GitHub上已开源过的项目名称相同。 其次,选择合适的编程语言。 再次,编码过程中要注意代码的规范。 最后要说的就是开源协议的选择了,目前最流行的开源协议有以下六种:GPL、BSD、MIT、Mozilla、Apache和LGPL。 不同的开源协议之间的差别还是挺大的,具体如何选择,可以参考 一张图看懂开源协议 ( https://blog.csdn.net/cwt19902010/article/details/53736746),如果这些常用的开源协议都不适合你的项目,你也可以自己写一个自己的开源协议。 为了更方便查看开源协议选择图,参考图如下 以Apache License Version 2.0协议为例,比较常用协议与Apache协议冲突情况,冲突图如下: 二、协议 项目开发完成之后