其实互联网职业可以大致分两个阶段,在毕业后的3到5年内主要都是以学习、积累为主,从一开始啥都不懂的校园“新鲜人”向“职业人”转变。如果你是Java开发者,在这个阶段你会学习:
1、基础的Java知识,多线程、集合类、JVM
2、进阶知识,设计模式、系统设计和方法论
3、主流框架,Spring、Spring Boot、MyBatis……
4、微服务,Dubbo、ETCD、Spring Cloud……
5、数据库,Redis、ES、MySQL、分库分表
分享一下我的学习之路
2017从杭州师范大学(也是马云的母校)毕业后,我就留在了杭州,因为家庭原因,从大三开始已经没了考研的想法,只想快点工作,能稍微减轻父母身上的重担。计算机科班毕业,当时因为简历的原因在加上自己学的不是很好,投入大厂的简历全部石沉大海,没有丝毫音讯。最终来到了一家上市公司,浑浑噩噩的渡过的两年,除了CRUD啥都不懂,每月拿着9K+的薪水,日子过得紧张而又无趣。
今年年初,疫情覆盖全国,造成了大小型互联网公司全面缩水裁员,我们公司也不例外(公司不养闲人这个上班族都是明白的)毫无意外我被裁掉。本来感觉生活很无趣又惨遭下岗,这样的打击差点让我崩溃。(不过后来我知道,这是个提升自己的契机)
一、Dubbo是什么?
Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。
二、为什么要用Dubbo?
因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。
1、使用Dubbo可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,可用于提高业务复用
灵活扩展,使前端应用能更快速的响应多变的市场需求。
2、分布式架构可以承受更大规模的并发流量。
三、Dubbo 和 Spring Cloud 有什么区别?
1、通信方式不同:Dubbo 使用的是 RPC 通信,而Spring Cloud 使用的是HTTP RESTFul 方式。
2、组成不一样:
dubbo的服务注册中心为Zookeerper,服务监控中心为dubbo-monitor,无消息总线,服务跟踪、批量任务等组件;
spring-cloud的服务注册中心为spring-cloud netflix enruka,服务监控中心为spring-boot admin,有消息总线,数据流、服务跟踪、批量任务等组件;
四、Dubbo需要 Web 容器吗?
不需要,如果硬要用Web 容器,只会增加复杂性,也浪费资源。
五、Dubbo内置了哪几种服务容器?
三种服务容器:
1、Spring Container
2、Jetty Container
3、Log4j Container
Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。
六、dubbo都支持什么协议,推荐用哪种?
1、dubbo://(推荐)
2、http://
3、rest://
4、redis://
5、memcached://
七、Dubbo里面有哪几种节点角色?
1、provide:暴露服务的服务提供方
2、consumer:调用远程服务的服务消费方
3、registry:服务注册于发现的注册中心
4、monitor:统计服务调用次数和调用时间的监控中心
5、container:服务运行容器
八、dubbo服务注册与发现的流程图
九、Dubbo默认使用什么注册中心,还有别的选择吗?
推荐使用zookeeper作为注册中心,还有redis、multicast、simple注册中心。
十、Dubbo 核心的配置有哪些?
技术学习总结
学习技术一定要制定一个明确的学习路线,这样才能高效的学习,不必要做无效功,既浪费时间又得不到什么效率,大家不妨按照我这份路线来学习。
最后面试分享
大家不妨直接在牛客和力扣上多刷题,同时,我也拿了一些面试题跟大家分享,也是从一些大佬那里获得的,大家不妨多刷刷题,为金九银十冲一波!
为金九银十冲一波!
[外链图片转存中…(img-FDYKFWxH-1716328731081)]
[外链图片转存中…(img-Q4Krz26d-1716328731081)]