关于golang:dubbogo-社区负责人于雨说

60次阅读

共计 3923 个字符,预计需要花费 10 分钟才能阅读完成。

1. 请介绍下本人

好多人认为我名字是于雨,其实是 2012 年应用微信时用的微信名字,起初入职阿里时也用作花名,当初曾经成了我的罕用名了。

从业十一年来始终在服务端基础架构研发一线,工作内容宽泛,涵盖 RPC、NoSQL 存储、实时监控告警、即时通信、音讯推送等方面。钻研内容也挺宽泛,2018 年到 2019 年在 Google 内搜寻 RocksDB,集体的技术博客始终在 first page,我大略也是国内最早的 gogo protobuf 和 pulsar 钻研和鼓吹者。

起家工作语言是 C/C++,2013 年在 chinaunix 上接触到 Go 语言,跟着 go 官网博客开始学习,所以在 Go 语言方面我算是野路子出身,没有人正式带过我。集体酷爱开源,从 2015 年为 Redis 奉献代码开始,2015 年应用 C++11 重构 Muduo,2016 年构建 dubbogo,2018 年接触 Pika。过后除了给 pika 修复 bug,次要构建 Pika 和 Redis 之间数据代理 PikaPort,PikaPort 先后在 360、新浪、脉脉、全民高兴、顺丰、快手、好将来等公司投入使用,直到往年为止不少新浪、好将来和快手等公司不少 DBA 还因为这个工具找我交换。

目前业余次要精力在 dubbogo 社区推动 dubbogo 我的项目。业余时间,除了 dubbogo 社区,还在即时通讯圈子与从业者进行技术交换,IM 方面集体有七八年实战我的项目教训积攒。

2. 聊聊你最近一年正在做的我的项目,它的技术价值怎么?它的行业倒退情况是怎么?你负责我的项目的技术亮点和挑战是否开展讲讲?

集体从 2018 下半年开始全力构建 dubbogo 社区,其次要开源我的项目当然是 https://github.com/apache/dub…。

这个我的项目的技术价值,对我集体而言,是我买通我的即时通信技术体系的要害,我集体认为技术是举一反三的,微服务治理技术和 MQ 技术比起来,仅仅少了一块存储技术,其余无差。它本身的技术价值就更不用说了,集体认为它是 Dubbo 迈进云原生技术时代的基石。

就其行业倒退情况而言,dubbogo 目前倒退十分好,目前注销的应用方有 35 个,实际上有更多,行业涵盖了电子商城、即时通信、交通出行、游戏、第三方领取、快递、游览、车联网、IoT、衰弱医疗、云平台、视频网站、数字货币、情感交换 APP、少儿教育、教育电子设备、营销培训、税务办理、汽车交易、视频聊天、文档办公等方方面面,详见 https://github.com/apache/dub…。

dubbogo 社区有贡献者 100 多人,apache dubbo committer 23 人,apache dubbo PMC 5 人。社区根底我的项目在 https://github.com/dubbogo,孵化成熟后即募捐到 https://github.com/apache,曾经总体给 apache 组织奉献了 5 个 我的项目。总体我的项目【蕴含 getty\gost\hessian2\triple\v3router 等】代码有 17 万行之多,其中不少代码被国内其余同行我的项目不打招呼“借鉴”过来。

dubbogo 首先是 dubbo 的 go 语言实现,其第一要义就是全面兼容 dubbo。dubbo 底层的网络库是 netty,其原生序列化协定库是 hessian2,2016 年 4 月开始构建 dubbogo 时我首先要做的就是 应用 go 语言实现一个相似于 netty 的网络库 getty https://github.com/apache/dub…,其次是构建 hessian2 协定的 go 语言版本 https://github.com/apache/dub…,总之 dubbogo 从底层到下层全副都自成体系。目前 dubbogo 除了对齐所有 dubbo 版本,与 dubbo 齐头并进。

dubbogo 还有第二个使命:充分利用作为云原生时代第一语言 —Go 语言的劣势,扩大 dubbo 的能力。dubbogo 最早实现了把 k8s 作为注册核心的微服务治理计划,目前的 dubbo 的 k8s 注册核心解决方案即脱胎于此。

dubbogo 第三个使命是互联互通。dubbogo 本身的主旨是“bridging the gap between Java and Go”,除了与 dubbo 放弃兼容外,目前也曾经与 gRPC 和 兼容 REST 协定的框架如 Spring Cloud Alibaba 买通。

近期社区次要精力在于构建 dubbogo 生态矩阵,其中的要害就是最新迁徙到 apache 的网关我的项目 https://github.com/apache/dub…,它将逐渐买通 dubbo/SpringCloud/gRPC/RocketMQ,初步验证集体对云原生将来状态的构想 https://mp.weixin.qq.com/s/EW…。

3. 在技术计划落地的过程中,你通常关注哪些问题?如何保障技术计划顺利施行?

技术计划的落地,集体次要关注其价值,从技术价值和客户价值登程思考其收益、人力资源老本、技术危险等问题。一旦指标确定,接下来要做的就是指标的拆解、寻找靠谱的工程师以及工程进度的实时跟踪,一旦面临我的项目进度或者未预料到的技术危险,首先要及时裸露给利益方相干人,保障能在可控工夫范畴内让问题收敛。

如果无奈收敛,在大公司就须要思考把问题回升,向上治理,利用各种资源来推动问题被解决。如果在中小公司内,以以后的资源【包含人力资源】无奈保障问题收敛,能做到的就是及时止损。

4. 架构师在最近的技术变动的浪潮中,须要面对的挑战都有哪些?如何应答这些挑战?

集体在以后公司工作的两年多工夫里,始终是一线搬砖的工程师,自感没有资格以架构师的高度议论这个话题。

不过在以前公司工作时 title 是架构师,如果把话题范畴不局限在“最近的技术变动的浪潮”内,我倒是能够议论下过后的面临的挑战以及应答之道。过后面临的挑战是公司的基础设施能力是零,过后的共事面临线上故障的第一反馈是把最有可能出问题的服务全副重启一遍,如果还不能解决问题就把相干链路上所有的服务的版本回退并重启一遍。集体的应答办法就是基于集体的工作教训,借鉴以往工作中成熟技术计划,带着我组内的几个共事把公司的轻量级实时监控零碎、日志收集零碎、即时通信零碎以及 KV 存储系统全副从零实现进去。

诚所谓功不唐捐,集体工作前五年始终跟着各路徒弟搬砖,同时也积极参与各种开源我的项目,算是吃过一些猪肉也见过很多猪的走路姿态,积攒的教训在过后这些系统实施过程中很好地保障了这些零碎疾速高效的施行进去。

5. 在做技术选型的过程中,你常常思考的问题有些?

以集体的愚见,技术人做技术选型肯定不能只站在技术角度对待问题,肯定要从价值角度或者说是老板的角度对待问题。老板的角度,个人感觉大略有三点:疾速施行、零碎稳固和老本最低。

所谓疾速施行,就是在相干技术能在最短时间内把问题搞定,实现业务指标。零碎稳固,首先要保证系统的稳固牢靠运行,其次要保障架构三年【起码一年】不必翻来覆去一直地推到重来,必要的打补丁能够承受。做到前两点的前提下,尽可能地让人力资源、机器老本、保护老本等各种老本放弃最低,让业务挣到钱,起码不要亏钱。

6. 云原生畛域你看好哪个我的项目或技术,为什么?

云原生畛域的具体我的项目集体首先看好 dubbogo,因为我集体在我的项目上曾经保持到了第六个年头,初心和激情仍在。有意愿退出开源社区,还是心愿做好进行长期持久战做长期贡献的筹备,否则道不同不相为谋。

就云原生技术方向而言,这个话题太宽泛,集体积攒甚少,还须要很长时间的学习和积攒,盲目无资格评点。略微能说的是,集体预感以开源服务平台为根底的跨云【如阿里云、腾讯云、华为云】多 k8s 集群治理是个很好的方向,如跨供应商进行服务部署。例如,https://github.com/gardener 这个我的项目,sap 和 pingcap 都在应用,是一个 k8s 多集群管理者,反对 aliyun/aws/openstack 等,同时能让一个物理机被多个 k8s 集群治理,有命令行也有 web 界面,这是妥妥的将来的混合云 多 k8s 集群的范例,能够应用 gardener 做多云平台治理,而后依赖 dapr 或者相似产品【如蚂蚁最近开源的 Layotto 以及 将来的 dubbo-go-pixiu】做公共服务部署。总之,个人感觉这块将来市场空间很大,可设想的中央很多。

8. 请介绍下你这次在 giac 演讲的议题或者负责的专题内容

集体本次演讲的内容次要围绕 dubbogo 3.0 开展。除了大家通过公开渠道曾经晓得的 dubbogo 3.0 的利用注册服务发现、新的路由计划以及新的注册通信协议外,还会着重解说下官网对 dubbogo 3.0 将来的一些布局:dubbogo 微服务平台在云原生时代的容量与资源耗费评估、自适应限流与自适应负载平衡、Proxyless Service Mesh 等。

当然,我还会补充一些 dubbogo 在阿里外部的落地状态。总之,让一个有着 14 年历史的微服务治理框架在云原生时代与时俱进成为一个微服务治理平台,是致敬前辈开拓者和当下用户信赖的最佳形式,也为国内其余开源我的项目建立一个继续演进长期保护的标杆。

9. 对本次 giac 有什么寄语

这是 dubbogo 社区第二次派人参加 giac 大会了,心愿 dubbogo 和 giac 都在各自的畛域倒退地越来越好。更心愿通过 giac 这个平台,让更多人意识 dubbogo 这个弱小的微服务根底平台,促成国内微服务技术的提高,发明出更多的社会价值与技术红利。

dubbogo 社区与 dubbogo 我的项目同在。欢送对 apache/dubbo-go 我的项目有趣味的同学欢送钉钉扫码退出交换群【或搜寻钉钉群号 31363295】:

正文完
 0