自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 Spring bean的生命周期

1、Bean生命周期方法,摘自源码BeanFactory注释。2、对于InstantiationAwareBeanPostProcessor.postProcessBeforeInstinatiion(继承自BeanPostProcessor)调用,如果返回了Bean就不需要后续处理。3、BeanPostProcessors是基于bean级别的后置处理器,用于Bean初始化方法(init-method)前后调用。BeanFactory不会自动注册该处理器,只有Application会自动注册该...

2020-05-24 11:27:03 138

原创 Rocket Mq消息持久化

一、为什么要持久化:防止消息丢失。二、rmq消息持久化方式 :在rmq中采用 CommitLog和ConsumeQueue 2个文件结合来持久化消息。其中CommitLog是用来存放消息实体的,文件位置在store/commitLog目录下,一个broker共用同一个commitlog目录下所有文件。consumeQueue是消息的索引文件,用来指示消息在commitLog中的具体位置...

2020-04-15 17:09:02 735

原创 Dubbo容错机制

一、什么是容错:容错指的是某种系统控制在一定范围内的一种允许或包容犯错情况的发生。二、Dubbo提供的容错机制:Failover(默认机制):当调用某个provider失败的时候,会重试其他provider,用户可以通过retries=2,设置重试次数。 Failfast:快速失败,当调用某个provider失败的时候,不会重试其他provider,快速返回异常结果。通常使用在非幂等...

2020-04-03 17:13:53 1059

原创 Dubbo扩展加载(二)

一、Dubbo SPI加载机制,Dubbo扩展加载分为3类,普通扩展加载、自适应扩展加载,批量扩展加载。Dubbo SPI和JDK SPI相比较:(dubbo官网描述)Dubbo 的扩展点加载从 JDK 标准的 SPI (Service Provider Interface) 扩展点发现机制加强而来。Dubbo 改进了 JDK 标准的 SPI 的以下问题:JDK 标准的 SPI 会...

2020-03-30 19:32:50 282

原创 Dubbo扩展加载机制(一、JAVA SPI)

JAVA SPI:1、什么是SPI:SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。SPI是一种动态替换发现的机制,我们经常遇到的就是java.sql.Driver接口,其他不同厂商可以针对同一接口做出不同的实现,mysql和postgresql都有不同的实现提供给用户,而Java的SPI机制可以为某个接口寻找服务实现。J...

2020-03-30 13:24:08 121

原创 Netty源码解析(一)----Bio和Nio的区别

一、传统的Bio编程模型。示例代码: //1、绑定到8888端口 ServerSocket serverSocket = new ServerSocket(8888); //2、一直阻塞直到有远程连接 Socket clientSocket = serverSocket.accept(); BufferedRea...

2020-02-23 11:20:13 167

原创 Linux时间同步

Linux时间同步:yum安装ntpdate,yum -y install ntp安装完毕,修改/etc/ntp.conf文件,修改server常用server有ntp常用服务器:中国国家授时中心:210.72.145.44NTP服务器(上海) :ntp.api.bz配置contab任务,每过10分钟同步一次*/10 * * * * root ntpdate 21...

2019-03-06 11:31:20 183

原创 Linux主机名和网络配置

新安装的Linux系统修改主机名:1、修改主机名,总共要修改2个文件,/etc/sysconfig/network、/etc/hosts,这里取hadoop为主机名:(1)修改/etc/sysconfig/network文件vim /etc/sysconfig/network#将/etc/sysconfig/network中的 HOSTNAME 修改为主机名(2)修改/...

2019-03-06 11:15:53 2912

原创 关闭钩子

当某些情况下,用户关闭了应用程序时,需要做一些清理工作。程序关闭分为2中情况:1、程序正常关闭,可以通过正常手段做清理工作。2、程序异常关闭,无法通过正常的流程完成清理工作,这时候就需要用到关闭钩子。在java中,虚拟机会对2类事件进行响应,然后执行关闭操作。1、当调用System.exit()方法或程序的最后一个非守护进程退出时,应用程序会正常退出。2、用户突然强制虚拟机...

2018-12-10 23:08:12 255

原创 网络传输层

传输层解决的问题:1、实现计算机之间进程之间的通讯。2、提供可靠的传输服务。(差错校验,重传机制,排序,流量控制)传输层的功能:1、网络进程寻址:源主机地址+源进程标志、目的主机地址+目的主机标志2、可靠传输:建立链接,维护,拆除,错误恢复与流量控制。3、分段功能4、复用功能:一个高层应用复用多个网络层链接,多个高层应用复用一个网络链接。 根据高层应用的需求传输...

2018-12-03 16:46:12 369

原创 IP协议

IP层在经典的网络模型中又称网络层。IP层要解决的问题:异构网络的互联。IP层为上层提供了无连接不可靠的协议。无连接:网络中2个节点需要通信无需提前建立连接,提高了网络容错性。不可靠:无差错校验,无重传机制。IP数据包结构:1、版本号:IPv4,IPv62、头部长度:4位表示,4位最大表示15,每一段4个字节,头部最大位60个字节,其中固定长度位20个字节,所以...

2018-11-28 17:23:17 203

原创 计算机网络ISO/OSI

计算机网络ISO/OSI七层模型:1,物理层:实现比特流传输。2,数据链路层:实现相邻结点可靠传输。3,网络层:异构网络的互连。4,传输层:进程之间的通讯。5,会话层:会话管理机制。6,表示层:数据语义。7,应用层:网络接口。 TCP/IP四层模型:1,物理层2,网际层3,传输层4,应用层 现在网络模型:1,物理层2,数据链路层...

2018-11-25 22:39:04 707

原创 二叉树(堆和优先队列)

堆是一种特殊的二叉树。最小值堆:最小值堆的特性。对于堆的任意非叶节点K,K的值总是小于或者等于左右子节点。K <= 左节点;K <= 又节点;堆实例:堆实际上是一个完全二叉树(若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。)可以用数组表示。堆中存储是局部有序的...

2018-11-07 17:59:54 315

原创 二叉搜索树(BST)

二叉搜索树(BST)BST:或者是一棵空树,或者对于任何一个结点,设其值为K,则该结点的左子树的值小于K,右结点的值大于K。二叉搜索树按照中根遍历将各个结点打印,将得到按照大到小的顺序排列。BSG示意图:二叉搜索树的效率在于检索,将算法复杂度从2^k减少到log(n)检索方式:    从根结点开始,如果等于根结点值直接返回,如果大于根节点从右子树开始继续检索,如...

2018-11-06 13:35:11 105

原创 数据结构二叉树

二叉树定义:二叉树由结点的有限集合构成。二叉树的五种形态:a:空二叉树,b只有一个根节点的二叉树,cd只左子树点或右子树的树,e有2个子树的树。特殊的二叉树:1)满二叉树,2)完全二叉树 ,3)扩充二叉树。1)满二叉树。一颗二叉树的任何节点,或者是树叶,或者恰好有2棵非空子树。完全二叉树:只有最下面的2层的节点度数可以小于2最下面一层的结点都集中在该曾最左边...

2018-11-04 19:35:41 150

原创 java基础教程:集合LinkedList

LinkedList得UML图,实现了Cloneable,list,Deque,Serializable接口,继承父类AbstractSequentiaList。Deque接口,新增了链表得一些特色方法,offer,poll,peek,element等LinkedList基本重写了AbstractList中的所有基本方法。public class LinkedList<E...

2018-10-09 23:54:40 102

原创 java基础教程:集合之ArrayList源码分析

1我们先来看看ArrayList的UML图。ArrayList继承父类AbstractList及List,Cloneable,Serializable,RandomAccess四个接口。后四个接口是标记接口,Cloneable提供克隆,Serializable提供序列化,RandomAccess提供快速访问。List接口提供默认API。List接口,保留了Collectio...

2018-10-08 22:52:13 108

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除