2020 年微服务项目活跃度报告
导读:2020 年 8 月 18 日,首届云原生微服务大会于线上召开,会议首日,阿里云资深技术专家、CNCF TOC 李响 Keynote 演讲中正式发布了《 2020 年微服务领域开源数字化报告》。
微服务体系就像是一剂催化剂,可以加速数据和业务结合的过程,更好地提升生产力,从而实现业务的提升。本项目旨在通过建立一份建立在微服务领域的相对完整、可以反复进行推演的数据报告(报告、数据、算法均开源),分析微服务框架项目以及 Spring Cloud 项目的 GitHub 开发者行为日志,通过多维度数据分析的视角,来观察微服务领域的开源现状、进展趋势、演化特征等问题。
本报告根据 2020 年 1 月到 6 月的 GitHub 日志进行统计。值得一提的是,报告显示 Apache Dubbo 作为中国本土开源的项目,在微服务框架中排名第 5,全球排名跻身 693;Spring 社区第一个国产 Spring Cloud 项目 Spring Cloud Alibaba 作为开源的微服务全家桶,在 Spring Cloud 榜单中居于榜首。
关键词:微服务、开源、行为数据、GitHub
背景
随着业务的扩张,单体应用架构的开发、部署和运维都会越来越慢,越来越复杂,甚至在单体架构应用开发中敏捷模式无法施展开。基于此,具有更高独立性、可用性和弹性的微服务应运而生。从结构上看,微服务架构将一个应用拆分成多个松耦合的服务,这些服务之间通过某种协议(REST、rpc 等)进行互相协作,完成原单体架构功能,但提供更灵活的部署模式,更容易扩展,降低了开发、运维上的复杂度。微服务的核心思想就是分而治之。微服务是商业应用程序发中最热门的新事物。微服务这个词取代了敏捷、DevOps 和 RESTful。
2020 年 7 月 O’Reilly 公布了一份关于企业微服务市场现状的数据调研。报告显示,在访问了全球 1502 名软件工程师、系统和技术架构师、工程师以及决策者后,有 77% 的组织反馈采用了微服务,其中 92% 的组织成功使用了微服务。了解并分析微服务领域开源项目的发展,有助于掌握该领域的发展趋势,从而帮助提高企业的竞争力。
因此,进一步深入研究微服务领域的开源数字化现状具有非常重大的意义。
总体宏观统计结果
1. Key Takeaways
-
Quarkus 作为云原生微服务框架,在微服务框架中活跃度排名第一,全球 GitHub 开源项目活跃度中排名 40;
-
Spring 作为 Java 微服务框架事实标准,Spring Cloud 和 Spring Boot 项目在微服务框架中活跃度分别位列第二和第三;
-
Apache Dubbo 作为中国本土开源的项目,微服务框架活跃度排名第五,全球 GitHub 开源项目活跃度中排名跻身 693;
-
在厂商 Spring Cloud 项目中,Spring Cloud Alibaba 活跃度排名第一。
2. 微服务框架榜单
根据附录中给出的项目活跃度定义,我们使用 2020 年 1 月~6 月的数据对微服务框架相关的项目及社区进行了活跃度的统计与排名,结果如下表所示,quarkusio/quarkus 项目、spring-cloud 社区、spring-projects / spring-boot 项目分别位于 Top1,Top2,Top3。需要注意的是,global_rank 是指该项目在全球 GitHub 开源项目中的活跃度排名。
(点击查看大图)
【注】:表格中的 developer 是指执行了五种动作:Issue comment、Open issue、Open pull request、Pull reuqest review comment 和 Pull request merged 的开发者。
3. Spring Cloud 榜单
根据附录中给出的项目活跃度的定义,我们使用 2020 年 1 月~6 月的数据对 Spring Cloud 项目进行了活跃度的统计与排名,结果如下表所示:
(点击查看大图)
【注】:表格中的 developer 是指执行了五种动作:Issue comment、Open issue、Open pull request、Pull reuqest review comment 和 Pull request merged的开发。
展望
此次开源项目数据报告针对微服务领域的项目进行了研究,主要是提供了一些统计数据。未来,会对社区协作关系做可视化的呈现;在数据挖掘的层面,会基于真实数据挖掘数据背后的价值。希望报告所倡导的开源开放的业态有助于推动中国微服务领域的开源走向更深层次。
致谢
本次报告由 X-lab 开放实验室撰写。
X-lab 开放实验室是由来自华东师范大学、同济大学的师生所构成的开放创新共同体,专业背景包括计算机科学、数据科学及其相关跨学科,长期思考并实践教育与开源两大主题。
附录:数据集及方法
1. 数据集
-
时间:2020 年 1 月~2020 年 6 月
-
微服务框架数据
- spring-cloud 数据集
2. 活跃度计算方式
(1)开发者活跃度
开发者活跃度,其定义为某特定 GitHub 账号在一段时间内在某特定 GitHub 项目中的活跃评价指标。其活跃度由该账号在该项目中的行为数据决定。本报告中所关心的行为包含如下几种:
-
Issue comment:在 issue 中参与讨论是最基本的行为,每个评论计入 1 次;
-
Open issue:在项目中发起一个 issue,无论是讨论、Bug 报告或提问,对项目都是带来活跃的,每个发起的 issue 计入 1 次;
-
Open pull request:为项目提交一个 PR,表示已对该项目进行源码贡献,则每次发起一个 PR 计入 1 次;
-
Pull reuqest review comment:对项目中的 PR 进行 review 和讨论,需要对项目有相当的了解,并且对项目源码的质量有极大帮助,每个评论计入 1 次;
-
Pull request merged:若有 PR 被项目合入,即便是很小的改动,也需要对项目有较为深入的理解,是帮助项目进步的真切贡献,则每有一个 PR 被合入计入 1 次。
以上 5 个种行为在该报告模型中,具有不一样的权重,其加权值逐级增加,加权值分别为 1、2、3、4、5,即:
(2)项目活跃度
项目活跃度,其定义为某特定项目在一段时间内的活跃评价指标。其活跃度由该段时间内在本项目中产生活跃的开发者活跃度加权计算得到,即:
使用开方的加权方式,用于抹平因核心开发者活跃度过高而导致项目活跃度过高,在该计算方式下,活跃度计算方式对参与人数较多而活跃情况平均的项目更加友好。
本报告将周期性更新、发布,报告长期沉淀地址:https://github.com/alibaba/OpenSourceReport
首届云原生微服务大会
首届云原生微服务大会正在火热直播中,点击 PC 端地址即可观看:https://developer.aliyun.com/topic/microservices2020#/
“阿里巴巴云原生关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的公众号。”

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
边缘计算、区块链、5G,哪个能走的更远
频繁出现的新词汇5G、区块链、边缘计算,这些都代表了什么,又能给我们的生活带来什么巨大的改变么?抉择之时已至,能够走向未来的真的只有一个吗? “没有什么能够阻挡,你对自由的向往....”手机铃声响起。 “喂,你好” “您好,这边是 xx 的客服代表,目前针对老用户有一个 4G 卡升级 5G 的活动,您作为我们 9 年的老用户可以将 4G 卡免费升为 5G 卡,并且每个月赠送 7 个 G 的全国流量....现在这个 5G 速度比 4G 快很多,下载东西,观看视频都是非常快的,以后都是 5G 时代,目前是赠送一年的体验期,体验期过了会恢复原价,咱们可以优先感受一下 5G 的魅力.....” 5G 我知道呀,之前热搜经常能看到它的影子,5G 商用之后各个运营商也开始了大力推广。之前也看过了好多关于 5G 的介绍和新闻。客服小姐姐看我这么感兴趣,更加热情洋溢的介绍了好久,最后被我以 “我的手机不支持 5G” 而告终,看来是时候要换个新手机了.... 2019 年 6 月,工业及信息化部正式发放 5G 牌照,开启了中国 5G 的商用元年,自此中国正式进入第五代移动通信时代。5G 从出现到至今一直...
- 下一篇
喵的Unity游戏开发之路 - 物理:表面接触,保持联系
前言 很多童鞋没有系统的Unity3D游戏开发基础,也不知道从何开始学。 为此我们精选了一套国外优秀的Unity3D游戏开发教程,翻译整理后放送给大家,教您从零开始一步一步掌握Unity3D游戏开发。 本文不是广告,不是推广,是免费的纯干货! 本文全名:喵的Unity游戏开发之路 - 物理 - 表面接触 - 保持联系 表面接触 保持联系 贴在地面,而不要从斜坡上飞走。 执行射线检测。 配置多层及其交互。 导航楼梯。 利用陡峭的接触(steep contacts)。 这是有关控制角色的运动的系列教程的第三部分。这是关于改善球体与曲面的相互作用。 本教程使用Unity 2019.2.14f1创建。它还使用ProBuilder软件包。 效果之一 跑酷的球。 贴在地面 当我们的球体到达坡道的顶部时,由于其向上的动量,它开始飞行。这是现实的,但可能并不理想。 球体在坡道顶部飞行。 当球体突然突然出现小的高差时,也会发生类似的情况。我制作了一个测试场景,以0.1增量的步长演示了这一步。 步骤测试场景。 如果步距不太高,则以足够的速度接近时,球体会反弹。在测试场景中,这对于平坦车道甚至很少发生,因为...
相关文章
文章评论
共有0条评论来说两句吧...