Loading

11 2021 档案

摘要:深度剖析Spring Boot自动装配机制实现原理在前面的分析中,Spring Framework一直在致力于解决一个问题,就是如何让bean的管理变得更简单,如何让开发者尽可能的少关注一些基础化的bean的配置,从而实现自动装配。所以,所谓的自动装配,实际上就是如何自动将bean装载到Ioc容器中来。 实际上在spring 3.x版本中,Enab 阅读全文
posted @ 2021-11-26 09:07 跟着Mic学架构 阅读(1691) 评论(2) 推荐(1)
摘要:你真的知道Spring注解驱动的前世今生吗?这篇文章让你豁然开朗!本篇文章,从Spring1.x到Spring 5.x的迭代中,站在现在的角度去思考Spring注解驱动的发展过程,这将有助于我们更好的理解Spring中的注解设计。 Spring Framework 1.x 在SpringFramework1.x时代,其中在1.2.0是这个时代的分水岭,当时Java 阅读全文
posted @ 2021-11-25 11:42 跟着Mic学架构 阅读(750) 评论(0) 推荐(1)
摘要:Spring Boot的前世今生以及它和Spring Cloud的关系详解。要了解Spring Boot的发展背景,还得从2004年Spring Framework1.0版本发布开始说起,不过大家都是从开始学习Java就使用Spring Framework了,所以就不做过多展开。 随着使用Spring Framework进行开发的企业和个人越来越多,Spring 也慢慢从一 阅读全文
posted @ 2021-11-24 14:05 跟着Mic学架构 阅读(1562) 评论(4) 推荐(4)
摘要:深度揭秘Netty中的FastThreadLocal为什么比ThreadLocal效率更高?深度揭秘Netty中的FastThreadLocal,Java已经有了一个ThreadLocal,Netty为什么要重新设计? 阅读全文
posted @ 2021-11-23 11:53 跟着Mic学架构 阅读(1192) 评论(0) 推荐(1)
摘要: Netty源码分析之Reactor线程模型详解上一篇文章,分析了Netty服务端启动的初始化过程,今天我们来分析一下Netty中的Reactor线程模型 在分析源码之前,我们先分析,哪些地方用到了EventLoop? NioServerSocketChannel的连接监听注册 NioSocketChannel的IO事件注册 NioServerS 阅读全文
posted @ 2021-11-22 10:43 跟着Mic学架构 阅读(846) 评论(0) 推荐(0)
摘要:学不懂Netty?看不懂源码?不存在的,这篇文章手把手带你阅读Netty源码!阅读这篇文章之前,建议先阅读和这篇文章关联的内容。 1. 详细剖析分布式微服务架构下网络通信的底层实现原理(图解) 2. (年薪60W的技巧)工作了5年,你真的理解Netty以及为什么要用吗?(深度干货) 3. 深度解析Netty中的核心组件(图解+实例) 4. BAT面试必问细节:关于Netty中 阅读全文
posted @ 2021-11-20 09:31 跟着Mic学架构 阅读(815) 评论(0) 推荐(1)
摘要:基于Netty4手把手实现一个带注册中心和注解的Dubbo框架阅读这篇文章之前,建议先阅读和这篇文章关联的内容。 1. 详细剖析分布式微服务架构下网络通信的底层实现原理(图解) 2. (年薪60W的技巧)工作了5年,你真的理解Netty以及为什么要用吗?(深度干货) 3. 深度解析Netty中的核心组件(图解+实例) 4. BAT面试必问细节:关于Netty中 阅读全文
posted @ 2021-11-19 10:52 跟着Mic学架构 阅读(741) 评论(1) 推荐(0)
摘要:手把手教你基于Netty实现一个基础的RPC框架(通俗易懂)阅读这篇文章之前,建议先阅读和这篇文章关联的内容。 [1]详细剖析分布式微服务架构下网络通信的底层实现原理(图解) [2][年薪60W的技巧]工作了5年,你真的理解Netty以及为什么要用吗?(深度干货) [3]深度解析Netty中的核心组件(图解+实例) [4]BAT面试必问细节:关于Netty中 阅读全文
posted @ 2021-11-17 09:45 跟着Mic学架构 阅读(4989) 评论(4) 推荐(2)
摘要:全网最详细最齐全的序列化技术及深度解析与应用实战这篇文章主要给大家讲解序列化和反序列化。 序列化是网络通信中非常重要的一个机制,好的序列化方式能够直接影响数据传输的性能。 序列化 所谓的序列化,就是把一个对象,转化为某种特定的形式,然后以数据流的方式传输。 比如把一个对象直接转化为二进制数据流进行传输。当然这个对象可以转化为其他形式之后再转化为数 阅读全文
posted @ 2021-11-16 09:58 跟着Mic学架构 阅读(2318) 评论(0) 推荐(1)
摘要:基于Netty实现自定义消息通信协议(协议设计及解析应用实战)所谓的协议,是由语法、语义、时序这三个要素组成的一种规范,通信双方按照该协议规范来实现网络数据传输,这样通信双方才能实现数据正常通信和解析。 由于不同的中间件在功能方面有一定差异,所以其实应该是没有一种标准化协议来满足不同差异化需求,因此很多中间件都会定义自己的通信协议,另外通信协议可以解决粘包和拆 阅读全文
posted @ 2021-11-15 11:06 跟着Mic学架构 阅读(1618) 评论(0) 推荐(0)
摘要:通过大量实战案例分解Netty中是如何解决拆包黏包问题的?TCP传输协议是基于数据流传输的,而基于流化的数据是没有界限的,当客户端向服务端发送数据时,可能会把一个完整的数据报文拆分成多个小报文进行发送,也可能将多个报文合并成一个大报文进行发送。 在这样的情况下,有可能会出现图3-1所示的情况。 服务端恰巧读到了两个完整的数据包 A 和 B,没有出现拆包/粘 阅读全文
posted @ 2021-11-14 15:25 跟着Mic学架构 阅读(640) 评论(0) 推荐(0)
摘要:BAT面试必问细节:关于Netty中的ByteBuf详解在Netty中,还有另外一个比较常见的对象ByteBuf,它其实等同于Java Nio中的ByteBuffer,但是ByteBuf对Nio中的ByteBuffer的功能做了很作增强,下面我们来简单了解一下ByteBuf。 下面这段代码演示了ByteBuf的创建以及内容的打印,这里显示出了和普通Byt 阅读全文
posted @ 2021-11-13 10:21 跟着Mic学架构 阅读(1018) 评论(0) 推荐(0)
摘要:45岁程序员,精通各种技术体系,却连个面试机会都没有…最近,在中国政府网,看到这样一个留言,引发了程序员这个圈子不少的轰动。 原文地址:http://www.gov.cn/hudong/2021-11/01/content_5648121.htm “Mary:我是一名计算机专业出身的软件开发人员,今年45岁,精通java的各种技术体系,包括微服务、大数 阅读全文
posted @ 2021-11-12 16:58 跟着Mic学架构 阅读(674) 评论(0) 推荐(0)
摘要:支撑千万级并发的架构师如何一步步演进的?我们现在所看到的大型网站或者架构,都是从小的网站和简单的架构一步步发展起来的,当然,也有一些是基于已有的分布式架构来构建的,也是看业务发展的情况而定。在架构的迭代演进的过程中,会遇到很多问题,就像升级打怪一样,等级越高,遇到的怪兽越强。 之前有个学员问了我,什么是架构。我是这么回答的。比如我们要建一 阅读全文
posted @ 2021-11-11 09:17 跟着Mic学架构 阅读(1365) 评论(1) 推荐(4)
摘要:基于大量图片与实例深度解析Netty中的核心组件本篇文章主要详细分析Netty中的核心组件。 启动器Bootstrap和ServerBootstrap作为Netty构建客户端和服务端的路口,是编写Netty网络程序的第一步。它可以让我们把Netty的核心组件像搭积木一样组装在一起。在Netty Server端构建的过程中,我们需要关注三个重要的步 阅读全文
posted @ 2021-11-10 09:19 跟着Mic学架构 阅读(789) 评论(0) 推荐(1)
摘要:工作了5年,你真的理解Netty以及为什么要用吗?(深度干货)来看下面这个图,当客户端发起一次Http请求时,服务端的处理流程时怎么样的? 简单来说可以分为以下几个步骤: 基于TCP协议建立网络通信。 开始向服务端端传输数据。 服务端接受到数据进行解析,开始处理本次请求逻辑。 服务端处理完成后返回结果给客户端。 在这个过程中,会涉及到网络IO通信,在传统的BI 阅读全文
posted @ 2021-11-09 09:40 跟着Mic学架构 阅读(9197) 评论(3) 推荐(5)
摘要:详细剖析分布式微服务架构下网络通信的底层实现原理(图解)在分布式架构中,网络通信是底层基础,没有网络,也就没有所谓的分布式架构。只有通过网络才能使得一大片机器互相协作,共同完成一件事情。 同样,在大规模的系统架构中,应用吞吐量上不去、网络存在通信延迟、我们首先考虑的都是网络问题,因此网络的重要性不言而喻。 作为现代化应用型程序员,要开发一个网络通信的应用 阅读全文
posted @ 2021-11-08 13:48 跟着Mic学架构 阅读(1547) 评论(0) 推荐(4)
摘要:超过1W字深度剖析JVM常量池(全网最详细最有深度)面试题:String a = "ab"; String b = "a" + "b"; a == b 是否相等 面试考察点 考察目的: 考察对JVM基础知识的理解,涉及到常量池、JVM运行时数据区等。 考察范围: 工作2到5年。 背景知识 要回答这个问题,需要搞明白两个最基本的问题 String a= 阅读全文
posted @ 2021-11-07 17:20 跟着Mic学架构 阅读(2538) 评论(4) 推荐(6)
摘要:我们知道spring cloud可以用来开发微服务,但是应该很少有人真正知道Spring Cloud是什么。 官方的解释是:spring cloud提供了一些可以让开发者快速构建分布式应用的工具,这些服务可以很好的工作在任何分布式环境下。 既然提供的是一些快速构建微服务应用的工具,那么我们需要了解微 阅读全文
posted @ 2021-11-06 21:27 跟着Mic学架构 阅读(1316) 评论(0) 推荐(2)
摘要:面试题系列:用了这么多年的 Java 泛型,我竟然只知道它的皮毛面试题:说说你对泛型的理解? 面试考察点 考察目的:了解求职者对于Java基础知识的掌握程度。 考察范围:工作1-3年的Java程序员。 背景知识 Java中的泛型,是JDK5引入的一个新特性。 它主要提供的是编译时期类型的安全检测机制。这个机制允许程序在编译时检测到非法的类型,从而进行错误提示。 阅读全文
posted @ 2021-11-05 11:32 跟着Mic学架构 阅读(1268) 评论(8) 推荐(2)
摘要:工作5年的程序员感慨:final、finally、finalize面试这么卷?面试题:final、finally、finalize的区别 面试考察点 考察目的: 了解求职者对Java基础的了解。 考察范围: 工作1-3年的Java程序员。 背景知识 final/finally在工作中几乎无时无刻不再使用,因此即便是没有系统化的梳理这个问题,也能回答出一些内容。 但是final 阅读全文
posted @ 2021-11-04 20:51 跟着Mic学架构 阅读(181) 评论(4) 推荐(0)
摘要:美团面试官问:写一个你认为最好的单例模式?于是我写了7个面试题:写一个你认为最好的单例模式 面试考察点 考察目的: 单例模式可以考察非常多的基础知识,因此对于这种问题,很多面试官都会问。 小伙伴要注意,在面试过程中,但凡能够从多个维度考察求职者能力的题目,一定不会被抛弃,特别是比较泛的问题,比如: ”请你说说对xxx的理解“之类。 考察范围: 工作1到5 阅读全文
posted @ 2021-11-03 17:27 跟着Mic学架构 阅读(1248) 评论(8) 推荐(6)
摘要:面试题系列:工作5年,第一次这么清醒的理解final关键字?面试题:用过final关键字吗?它有什么作用 面试考察点 考察目的: 了解面试者对Java基础知识的理解 考察人群: 工作1-5年,工作年限越高,对于基础知识理解的深度就越高。 背景知识 final关键字大家都不陌生,但是要达到深度理解,还是欠缺了一些。我们从三个方面去理解final关键字。 fin 阅读全文
posted @ 2021-11-02 14:42 跟着Mic学架构 阅读(1080) 评论(0) 推荐(0)
摘要:阿里二面面试题:请你说一下对受检异常和非受检异常的理解?面试题: 请你说一下对受检异常和非受检异常的理解? 面试考察点 考察目的: 异常的设计,在程序开发中时非常重要的。好的异常设计能够合理清晰的反馈程序的问题,提供排查思路。同时,还能够很好的处理资源回收问题。所以作为有经验的程序员,必须要了解异常,以及异常的差异和特性。 考察人群: 工作3年以上,3年 阅读全文
posted @ 2021-11-01 18:45 跟着Mic学架构 阅读(1505) 评论(0) 推荐(0)