阿里巴巴微服务开源生态报告 No.1

阿里巴巴中间件 发布于 06/21 14:48
阅读 9K+
收藏 54

从关注开源,到使用开源,再到参与开源贡献,越来越多的国内开发者通过开源技术来构建业务。

截止目前,Arthas / Dubbo / ChaosBalde / Nacos / RocketMQ / Seata / Sentinel / Spring Cloud Alibaba / Tengine 等微服务领域的开源项目在 GitHub 上已获得近 8w 的 star,contributor 数量达738位,以一种社区协作的方式,来提升项目的生产效率和分发效率。

这里面,大家既是项目的开发者,也是项目的使用者,作为项目的需求方一同参与到项目的迭代过程中,使得项目能以更快的响应速度来满足实际需求,快速迭代出「好」的产品,这似乎是其他协作方式难以达到的。

通常,我们都会通过在 GitHub 上订阅邮件列表,来了解社区动态。这一次,我们联合以上各开源项目的负责人,发布「微服务开源生态报告」,汇集各个开源项目近期的社区动态,帮助开发者们更高效的了解到各开源项目的最新进展。

 

社区动态包括,但不限于:

  • 版本发布
  • 人员动态

  • 项目动态和规划

  • 培训和活动

 

以下是第一期「微服务开源生态报告」的内容。

 

一、Apache Dubbo

1. 人员动态:
社区新增三位 committer,他们分别是:

  • dubbo-erlang维护者,来自平安壹钱包的谢生校,Erlang 也是 Dubbo 支持的第6种语言,GitHub ID @Dlive
  • 来自阿里巴巴谢育能,在 Dubbo 3.0上作出大量贡献,提供了 RSocket 的支持 ,GitHub ID@uglycow
  • 来自大搜车的雷舜宇,在 Dubbo 核心包括官网等做出了大量的改进和优化,同时 review了很多的 pull request,GitHub ID @leishunyu;

2. 项目动态和规划

  • 今年的 Google Summer of Code,课题是基于服务端响应的智能负载均衡,来自巴西的程序媛小姐姐 Daniela Morais 提交的代码,已进入开发阶段,大家一起讨论了实现的方案,初步计划采用服务端回调的方式,来完成服务端数据的传递;

  • dubbo-website支持了自动化构建,只需要提交markdown格式,系统会自动构建静态代码并且上传;

  • 2.7.2 发布的时候发现了一个性能问题,Java 8下的CompletableFuture.get()方法使用自旋的方式等待,会带来一定的 CPU 开销,社区正在讨论修复方案:

    https://github.com/apache/dubbo/issues/4279 

  • 社区正在讨论基于目前的文档,出一本 Dubbo 权威指南,目前有很多同学愿意参与进来共建;

  • alibaba/metrics 组件正在提供对 Prometheus 的支持;

     https://github.com/alibaba/metrics/pull/43

 

二、Apache RocketMQ 

1. 项目动态和规划

RocketMQ 完成和 CNCF CloudEvents 标准的绑定,这是国内开源软件第一个私有协议桥接设计,未来将在 Serverless 领域持续完成 events 支撑能力。

2. 培训和活动:

RocketMQ Meetup 城市站是社区自发组织,类似Google GDG的开发者沙龙。目前,已完成苏州、北京、上海与成都站的筹备工作,暨已经建立城市站联盟工作组。

  • 6月29日13:00 - 17:00,北京城市社区开发者沙龙:

https://www.huodongxing.com/event/9497509471700

  • 6月29日18:00,将举办北京城市社区开发者训练营:

https://www.huodongxing.com/event/1497572456700

  • 7月6日13:00 - 18:00,Apache RocketMQ × Apache Flink Meetup 上海站:

https://www.huodongxing.com/event/7496766547500

 

三、Arthas 

项目动态和规划

社区发起了 Arthas 在线教程的调研,希望大家提出改进建议。在线教程分为基础和进阶两部分,旨在帮助开发者更快速的上手 Arthas,诊断疑难杂症。

调研地址:https://github.com/alibaba/arthas/issues/742

 

四、ChaosBlade 

1. 版本发布

ChaosBlade 0.1.0 版本正式发布。主要功能点:

  • 可编写动态脚本实现复杂的 Java 实验场景,脚本支持 Java 和 Groovy 语言,可实现例如复杂的方法参数修改、复杂的方法返回值对象修改,抛复杂异常等;

  • Java 实验场景新增实验影响条数和百分比配置,可控制受实验影响的请求条数或请求百分比;新增 JVM 内 CPU 满载;

  • 新增 HttpClient 演练插件;

  • 其他的 bug 修复和功能改进。

Release notes: https://github.com/chaosblade-io/chaosblade/releases/tag/0.1.0
编写脚本实现 Java 复杂的演练场景帮助文档,可通过此功能扩展出更多的演练场景,欢迎使用:https://github.com/chaosblade-io/chaosblade/wiki

2. 项目动态和规划

  • ChaosBlade 下一个版本预计在7 月 11 日发布,将支持  C++  应用的混沌实验场景;

  • ChaosBlade 被列入 CNCF Landscape,详情:

https://landscape.cncf.io/category=chaos-engineering&format=card-mode&grouping=category

 

五、Nacos 

1. 版本发布

Nacos 1.0.1发布,支持健康检查插件等功能,这个版本中除了原有的贡献者外,新增了 13 名社区的贡献者,总计合入了 43 个PR。

Release notes: https://github.com/alibaba/nacos/releases/tag/1.0.1

2. 项目动态和规划

  • Nacos Go SDK 即将于6月底发布,由阿里巴巴和虎牙的开发者共同完成,将会是后续支持云原生的重要SDK;

  • Nacos 1.1.0 预计于7月5号发布,将支持灰度配置、地址服务器模式、配置导入导出、订阅者列表展示等重要功能;

 

六、Seata 

1. 版本发布

Seata 0.6.1 发布,支持集群、motan和多环境配置隔离等功能。

Release notes: https://github.com/seata/seata/releases/tag/v0.6.1

2. 项目动态和规划

  • 由社区捐赠的 seata-go-server 即将完成内部孵化;

  • Seata 下一个里程碑版本 0.7.0 将引入对 Mertric 和 Protobuf 的支持;

 

七、Sentinel 

1. 人员动态:

社区新增两位 committer,感谢两位对社区的贡献,他们分别是:

  • 来自友乐活(北京) 的 Jason Joo,GitHub ID @jasonjoo2010

  • 来自 tap4fun 的谢佶含,GitHub ID @cdfive

2. 版本发布

Sentinel 1.6.2 正式发布,主要的功能点:支持网关流控请求参数值匹配,以及其他的 bug 修复和功能改进。

Release notes: https://github.com/alibaba/Sentinel/releases/tag/1.6.2

3. 项目动态和规划

  • Sentinel 下一个里程碑版本 1.7.0 将引入对 Envoy 等 Service Mesh 的初步支持,相关讨论:

    https://github.com/alibaba/Sentinel/issues/666

  • Sentinel 首个原生多语言版本 - Sentinel C++ 已完成基本的统计和流控特性,近期将发布第一个 RC 版本;后续也会以 Envoy Filter 的形式原生整合到 Envoy 中,为 Service Mesh 提供多维度流量控制的能力。

 

八、Spring Cloud Alibaba 

1. 版本发布

Spring Cloud Alibaba 0.9.0 snapshot 版本发布,主要的功能点:

  • 新增 spring-cloud-alibaba-sentinel-gateway 模块支持 Zuul 以及 Spring Cloud Gateway,spring-cloud-starter-alibaba-sentinel 模块适配了 Webflux 和 WebServlet 两种环境;

  • RocketMQ Binder 适配了 Polled Consumer 功能,支持注入 PollableMessageSource 进行 RocketMQ 消息的拉取;

2. 项目动态和规划

  • 7月6日13:00 - 18:00,Apache RocketMQ × Apache Flink Meetup 上海站带来 《Spring Cloud Stream RocketMQ Binder & Bus 揭秘》的介绍,报名地址: 

    https://www.huodongxing.com/event/7496766547500

  • Spring Cloud Hoxton 近期发布第一个 snapshot 版本,该版本基于 Spring Boot 2.2.0 开发。Spring Boot 2.2.0 release note 参考 https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.2-Release-Notes,Spring Cloud Alibaba 后续会集成 Hoxton 版本;

 

九、Tengine 

版本发布

Tengine-2.3.1 版本预发布,丰富主动健康检查协议类型、独立模块支持动态编译等,以及相关模块问题的修复与优化、升级 core 代码为官方 Nginx-1.16.0 版本。

 

本期作者:

Dubbo:张乎兴,GitHub ID @ralf0131;RocketMQ:厉启鹏,GitHub ID @wlliqipeng;Arthas:陈志轩 ,GitHub ID @hengyunabc;ChaosBlade:肖长军,GitHub ID @xcaspar;Nacos:朱鹏飞,GitHub ID @nkorange;Seata:季敏,GitHub ID @slievrly;Sentinel:赵奕豪,GitHub ID @sczyh30;Spring Cloud Alibaba:方剑,GitHub ID @fangjian0423;Tengine:王发康,GitHub ID @wangfakang

 

加载中
1
calvinwilliams
calvinwilliams
国内自研中间件产品最强两家公司都在杭州,一是阿里巴巴/蚂蚁金服,另一家是杭州银行。杭银分布式联机服务平台自2012年投产核心业务系统以来,除了几次灾备切换演练配合重启平台,没有停止/重启过平台(对标tomcat),更新应用更无需重启平台,最新版本甚至支持热升级平台。基础架构团队欢迎您的加入,让我们共建银行业的阿里巴巴
BigBig未来
BigBig未来
大牛牛一个
0
赤炎泉
赤炎泉

希望Nacos能增加其它数据库(比如PG)的支持

返回顶部
顶部