9月份的时候,我接到了大量的提问。其中大部分是围绕 Spring Boot、Spring Cloud、Dubbo、Zookeeper、Redis,而这些问题直接问到我怀疑人生。忍不住在想自己是不是一个 Java 后台开发,为什么拥有多年的工作经验却无法进行问题回答。
其实,完全可以自信点,把怀疑两个字去掉:“我是一个 Java 工具人,每天干的就是 CURD。”
言归正传,正文开始...
我对 Dubbo 了解的并不多
我:“Java RPC 框架、服务的自动注册与发现、服务治理能力。”
真实且又无奈,如果问我对 HSF 了解的怎么样?这是可以好好吹一吹,从服务注册、发现、熔断、分组与版本、常见问题、如何排查等等。然而看了很多行业的岗位要求,完全没有看到过 EDAS-HSF 的内容。
所以,想要让自己的 Java 道路更宽广,Dubbo 是不得不这么硬刚的一座大山。
OK,找到了短板!那就好好面对它。
一、找到源码,star & fork
二、下载到本地,git clone
三、切换分支
$ git checkout -b dubbo-2.7.7 dubbo-2.7.7
四、Maven 构建
$ mvn clean install -Dmaven.test.skip=true
五、IDEA 构建
$ mvn idea:idea
PS. 虽然更熟悉 Eclipse,但是 Eclipse 下载插件真的令人崩溃。直接 IDEA 真香。
完整的源码就 OK 了
Dubbo 基础内容
26 个字母 符号组成的源码文件,直接读会不会有点非人类?
没关系,Dubbo 作为国产提交给 ASF 基金会的中国软件。它的官网是可以切换中文模式的。
简单摘要一些内容
三大核心功能:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
基础概念
Registry:注册中心。
Provider:服务提供者。
Consumer:服务消费者。
Monitor:监控中心。
一个完整的流程
Container 启动的时候,会将 Provider 注册到 Registry 之中。
Consumer 会向 Registry 进行订阅,获取 Registry 中的注册信息。当 Registry 发现 Provider 出现异常时,会通知 Consumer。
Consumer 获取到注册信息后,直接对 Provider 进行调用。
Consumer、Provider 的调用信息、调用时间会传递给 Monitor 进行记录。
其他更多的内容,可以自行查看官方文档。
总结
找到自己短板、正确的面对它、克服它,这样才能越来越强。
Dubbo 是我的短板,未来的几天假期,都将围绕它。
Just do it