Yu Yu, head of dubbogo community, said

Dubbo go open source community 2021-06-23 19:13:46
yu yu head dubbogo community

1. Please introduce yourself briefly

Many people think my name is Yu Yu , It's actually 2012 Wechat name used when using wechat in , Later, when I joined Ali, it was also used as a nickname , Now it has become my common name .

For 11 years, I have been in the front line of service infrastructure research and development , The work is extensive , cover RPC、NoSQL Storage 、 Real time monitoring alarm 、 Instant messaging 、 Message push and so on . The research content is also quite extensive ,2018 Year to 2019 In Google Internal search RocksDB, Personal technology blogs have been first page, I'm probably the earliest in China gogo protobuf and pulsar Researchers and advocates .

The starting language is C/C++,2013 In chinaunix I've come into contact with Go Language , follow go The official blog begins to learn , So in Go In terms of language, I come from the wild road , No one has ever brought me . I love open source , from 2015 Years for Redis Contribution code starts ,2015 Annual use C++11 restructure Muduo,2016 Annual construction dubbogo,2018 Annual contact Pika. At that time, besides giving pika Repair bug, The main building blocks are Pika and Redis Data broker between PikaPort,PikaPort Successively in 360、 Sina 、 affectionately 、 Happiness for all 、 Shun Feng 、 Well quickly 、 Tal and other companies put into use , Until this year, many Sina 、 Good future and Kwai Fu companies. DBA And because of this tool to communicate with me .

At present, the main energy of spare time is dubbogo Community driven dubbogo project . In my spare time , except dubbogo Community , We also have technical exchanges with practitioners in the instant messaging circle ,IM I have seven or eight years of experience in actual combat projects .

2. Talk about the projects you've been working on in the last year , What is its technical value ? What is the development of its industry ? You are responsible for the technical highlights and challenges of the project ?

The individual from 2018 In the second half of the year, we started to build dubbogo Community , Its main open source projects are, of course https://github.com/apache/dubbo-go.

The technical value of this project , For me personally , It's the key for me to get through my instant messaging technology system , I personally think technology is by analogy , Microservice governance technology and MQ Compared with technology , Only one piece of storage technology is missing , Everything else is the same . Its own technical value, not to mention , I think it's Dubbo The cornerstone of the era of cloud native technology .

In terms of its industry development ,dubbogo At present, the development is very good , Currently registered users are 35 individual , There are actually more , The industry covers e-mall 、 Instant messaging 、 Transportation 、 game 、 Third party payment 、 Courier 、 tourism 、 Car networking 、IoT、 Health care 、 Cloud platform 、 Video website 、 Digital currency 、 Emotional communication APP、 Children's education 、 Educational Electronics 、 Marketing training 、 Tax affairs 、 Car trade 、 Video chat 、 Document office and other aspects , See https://github.com/apache/dubbo-go/issues/2 .

dubbogo The community has contributors 100 Many people ,apache dubbo committer 23 people ,apache dubbo PMC 5 people . Community infrastructure projects are in https://github.com/dubbogo, After hatching, donate to https://github.com/apache, It has been given to apache The organization contributed 5 individual project . The overall project 【 contain getty\gost\hessian2\triple\v3router etc. 】 The code has 17 There are so many lines , Many of the codes are ignored by other domestic projects “ reference ” In the past .

dubbogo First of all dubbo Of go Language implementation , The first point is to be fully compatible dubbo.dubbo The underlying network library is netty, Its native serialization protocol library is hessian2,2016 year 4 We started building dubbogo The first thing I have to do is Use go The language implements a program similar to netty Network library of getty https://github.com/apache/dubbo-getty , The second is building hessian2 Agreed go Language version https://github.com/apache/dubbo-go-hessian2 , All in all dubbogo It's all self-contained from the bottom to the top . at present dubbogo Except for aligning all dubbo edition , And dubbo Do many things at once .

dubbogo There's a second mission : Make full use of as the first language in the cloud native era ---Go The advantages of language , Expand dubbo The ability of .dubbogo It was the first to realize k8s Microservice governance as a registry , current dubbo Of k8s The registry solution was born out of this .

dubbogo The third mission is connectivity .dubbogo Its purpose is “bridging the gap between Java and Go", Except for dubbo Keep compatible , At present, it has also been connected with gRPC and compatible REST The framework of the agreement is as follows Spring Cloud Alibaba Get through .

The main focus of the community in the near future is to build dubbogo The ecological matrix , The key is the latest move to apache Gateway project for https://github.com/apache/dubbo-go-pixiu, It will gradually open up dubbo/SpringCloud/gRPC/RocketMQ, Preliminary verification of personal vision of cloud's original future form https://mp.weixin.qq.com/s/EWR6xwbf53XHZ8O3m2bdVA .

3. In the process of technical solution implementation , What issues do you usually focus on ? How to ensure the smooth implementation of the technical scheme ?

The implementation of technical solutions , The individual is primarily concerned with its value , Consider the benefits from the technical value and customer value 、 Human resource costs 、 Technology risk and so on . Once the goal is set , The next step is to dismantle the target 、 Looking for reliable engineers and real-time tracking of project progress , Once faced with project schedule or unexpected technical risks , First of all, timely exposure to stakeholders , Ensure that the problem can converge in a controllable time range .

If it doesn't converge , In large companies, we need to consider raising the problem , Manage up , Use all kinds of resources to push problems to be solved . In small and medium-sized companies , With current resources 【 Including human resources 】 There is no guarantee that the problem will converge , What we can do is stop loss in time .

4. Architects in the recent wave of technological change , What are the challenges that need to be faced ? How to deal with these challenges ?

I have been working in the current company for more than two years , I've always been an engineer on the front line , I don't feel qualified to talk about this topic as an architect .

But when I used to work in a company title It's the architect , If the scope of the topic is not limited to “ The recent wave of technological change ” Inside , I can talk about the challenges and the ways to deal with them . The challenge then was that the company's infrastructure capacity was zero , At that time, my colleagues' first reaction to the online failure was to restart all the services most likely to have problems , If you can't solve the problem, roll back the versions of all the services on the relevant links and restart them . Personal response is based on personal work experience , Learn from the mature technical solutions in previous work , With a few colleagues in my group, the company's lightweight real-time monitoring system 、 Log collection system 、 Instant messaging systems and KV Storage systems are all implemented from scratch .

It's true that contributions are not made without merit , I've been moving bricks with all kinds of masters for five years , At the same time, we also actively participate in various open source projects , I've eaten some pork and seen the walking posture of many pigs , Accumulated experience in the implementation process of these systems at that time well ensured the rapid and efficient implementation of these systems .

5. In the process of technology selection , Some of the questions you often think about are ?

In my humble opinion , Technical personnel must not only look at the problem from the technical point of view when they make technology selection , Be sure to look at things from the perspective of value or the boss . From the perspective of the boss , I think there are three points : Fast implementation 、 The system is stable and the cost is the lowest .

Fast implementation , Is in the relevant technology can solve the problem in the shortest time , Achieve business goals . System stability , First of all, it is necessary to ensure the stable and reliable operation of the system , Second, we need to ensure that the framework lasts for three years 【 At least a year 】 You don't have to go over and over and over again , Necessary patches are acceptable . On the premise of achieving the first two points , Let human resources as much as possible 、 Machine cost 、 Keep maintenance costs and other costs to a minimum , Let the business make money , At least don't lose money .

6. Which project or technology do you prefer in cloud native field , Why? ?

I'm optimistic about specific projects in the cloud native field dubbogo, Because I've been on the project for the sixth year , The original intention and enthusiasm are still there . Volunteer to join the open source community , I still hope to be prepared for a long-term war and a long-term dedication , Otherwise, different ways will not conspire with each other .

In terms of cloud native technology , This topic is too broad , Little personal accumulation , It will take a long time to learn and accumulate , I'm not qualified to comment . The only thing I can say is , Personal premonition: cross cloud based on open source service platform 【 Such as ali cloud 、 Tencent cloud 、 Hua Wei Yun 】 many k8s Cluster management is a good direction , Such as cross vendor service deployment . for example ,https://github.com/gardener This project ,sap and pingcap All in use , It's a k8s Multi cluster managers , Support aliyun/aws/openstack etc. , At the same time, a physical machine can be divided into multiple k8s Cluster management , There are command lines and web Interface , This is Toto's future hybrid cloud many k8s An example of clustering , have access to gardener Do multi cloud platform management , And then rely on dapr Or something like that 【 Such as ant recently open source Layotto as well as In the future dubbo-go-pixiu】 Do public service deployment . All in all , I feel that there is a lot of market space in the future , There are so many places to imagine .

8. Please introduce you to giac The topic of the speech or the content of the topic

The content of my speech is mainly around dubbogo 3.0 an . In addition to what you already know through open channels dubbogo 3.0 Application registration service discovery 、 New routing scheme and new registration communication protocol , We will also focus on the official response to dubbogo 3.0 Some plans for the future :dubbogo The capacity and resource consumption evaluation of micro service platform in the cloud native era 、 Adaptive current limiting and adaptive load balancing 、Proxyless Service Mesh etc. .

Of course , I'll add a few more dubbogo The landing form inside Ali . All in all , Let one have 14 The 20-year-old framework of micro service governance keeps pace with the times in the cloud era and becomes a micro service governance platform , It's the best way to pay homage to the trust of the pioneers and current users , It also sets a benchmark of continuous evolution and long-term maintenance for other domestic open source projects .

9. Yes, this time giac Any message

This is a dubbogo The second time the community sent someone to attend giac The meeting is over , hope dubbogo and giac They are developing better and better in their respective fields . I hope to pass giac This platform , Let more people know dubbogo This powerful microservice infrastructure platform , Promote the progress of domestic micro service technology , Create more social value and technological dividend .

dubbogo Community and dubbogo Project with . Welcome to apache/dubbo-go Students interested in the project are welcome to join the exchange group 【 Or search the pin group number 31363295】:

本文为[Dubbo go open source community]所创,转载请带上原文链接,感谢

  1. 【计算机网络 12(1),尚学堂马士兵Java视频教程
  2. 【程序猿历程,史上最全的Java面试题集锦在这里
  3. 【程序猿历程(1),Javaweb视频教程百度云
  4. Notes on MySQL 45 lectures (1-7)
  5. [computer network 12 (1), Shang Xuetang Ma soldier java video tutorial
  6. The most complete collection of Java interview questions in history is here
  7. [process of program ape (1), JavaWeb video tutorial, baidu cloud
  8. Notes on MySQL 45 lectures (1-7)
  9. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  10. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  11. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  12. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  13. 【递归,Java传智播客笔记
  14. [recursion, Java intelligence podcast notes
  15. [adhere to painting for 386 days] the beginning of spring of 24 solar terms
  16. K8S系列第八篇(Service、EndPoints以及高可用kubeadm部署)
  17. K8s Series Part 8 (service, endpoints and high availability kubeadm deployment)
  18. 【重识 HTML (3),350道Java面试真题分享
  19. 【重识 HTML (2),Java并发编程必会的多线程你竟然还不会
  20. 【重识 HTML (1),二本Java小菜鸟4面字节跳动被秒成渣渣
  21. [re recognize HTML (3) and share 350 real Java interview questions
  22. [re recognize HTML (2). Multithreading is a must for Java Concurrent Programming. How dare you not
  23. [re recognize HTML (1), two Java rookies' 4-sided bytes beat and become slag in seconds
  24. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  25. RPC 1: how to develop RPC framework from scratch
  26. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  27. RPC 1: how to develop RPC framework from scratch
  28. 一次性捋清楚吧,对乱糟糟的,Spring事务扩展机制
  29. 一文彻底弄懂如何选择抽象类还是接口,连续四年百度Java岗必问面试题
  30. Redis常用命令
  31. 一双拖鞋引发的血案,狂神说Java系列笔记
  32. 一、mysql基础安装
  33. 一位程序员的独白:尽管我一生坎坷,Java框架面试基础
  34. Clear it all at once. For the messy, spring transaction extension mechanism
  35. A thorough understanding of how to choose abstract classes or interfaces, baidu Java post must ask interview questions for four consecutive years
  36. Redis common commands
  37. A pair of slippers triggered the murder, crazy God said java series notes
  38. 1、 MySQL basic installation
  39. Monologue of a programmer: despite my ups and downs in my life, Java framework is the foundation of interview
  40. 【大厂面试】三面三问Spring循环依赖,请一定要把这篇看完(建议收藏)
  41. 一线互联网企业中,springboot入门项目
  42. 一篇文带你入门SSM框架Spring开发,帮你快速拿Offer
  43. 【面试资料】Java全集、微服务、大数据、数据结构与算法、机器学习知识最全总结,283页pdf
  44. 【leetcode刷题】24.数组中重复的数字——Java版
  45. 【leetcode刷题】23.对称二叉树——Java版
  46. 【leetcode刷题】22.二叉树的中序遍历——Java版
  47. 【leetcode刷题】21.三数之和——Java版
  48. 【leetcode刷题】20.最长回文子串——Java版
  49. 【leetcode刷题】19.回文链表——Java版
  50. 【leetcode刷题】18.反转链表——Java版
  51. 【leetcode刷题】17.相交链表——Java&python版
  52. 【leetcode刷题】16.环形链表——Java版
  53. 【leetcode刷题】15.汉明距离——Java版
  54. 【leetcode刷题】14.找到所有数组中消失的数字——Java版
  55. 【leetcode刷题】13.比特位计数——Java版
  56. oracle控制用户权限命令
  57. 三年Java开发,继阿里,鲁班二期Java架构师
  58. Oracle必须要启动的服务
  59. 万字长文!深入剖析HashMap,Java基础笔试题大全带答案
  60. 一问Kafka就心慌?我却凭着这份,图灵学院vip课程百度云