自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (9)
  • 收藏
  • 关注

原创 spring cloud alibaba 2.2.0 + seata 1.2 + nacos 1.2.1搭建分布式事物

111

2020-06-24 16:36:58 752 1

原创 ThreadPoolExecutor源码解析

创建线程池最终都会调用下面这个方法对上面参数做一下简单讲解corePoolSize 线程池中核心线程数maximumPoolSize 线程池中最大线程数keepAliveTime 线程池中空闲线程存活时间TimeUnit    keepAliveTime的单位workQueue 阻塞队列BlockingQueue 实例threadFactory 线程工厂, 用于

2018-02-01 15:34:49 263

原创 ReentrantLock源码分析

ReentrantLock是Java并发包中提供的一个可重入的互斥锁。ReentrantLock和synchronized在基本用法,行为语义上都是类似的,同样都具有可重入性。只不过相比原生的Synchronized,ReentrantLock增加了一些高级的扩展功能,比如它可以实现公平锁,同时也可以绑定多个Conditon。AbstractQueuedSynchronizerReen

2018-01-30 11:05:08 244

原创 ConcurrentHashMap源码分析

HashMap :先说HashMap,HashMap是线程不安全的,在并发环境下,可能会形成环状链表(扩容时可能造成,具体原因自行百度google或查看源码分析),导致get操作时,cpu空转,所以,在并发环境中使用HashMap是非常危险的。  HashTable : HashTable和HashMap的实现原理几乎一样,差别无非是1.HashTable不允许key和value为null

2018-01-26 13:46:12 197

原创 HashMap源码解析

HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到位置来储存值对象。当获取对象时,通过键对象的equals()方法找到正确的键值对,然后返回值对象。HashMap使用链表来解决碰撞问题,当发生碰撞了,对象将会储存在链表的下一个节点中。 HashMap

2018-01-21 18:33:18 200

原创 Synchronized原理解析

Synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法,属于重量级锁。Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。从语法上讲,Synchronized总共有三种用法:  (1)修饰普通方法  (2)修饰静态方法  (3)修饰代码块

2018-01-08 21:43:43 332

原创 Spring Cloud Config 客户端的高可用实现

Spring cloud config在使用spring cloud 构建分布式系统的过程中,为了完成多个服务的配置统一管理,使用了spring cloud config作为配置中心,管理所有微服务的系统配置。在分布式系统中,配置中心是一个独立的服务部件,作用是专门为其他服务提供系统启动所需的配置信息,保证系统正确启动。使用中带来一个问题,即配置中心的高可用。配置中心的高可用问题配置中心(sp

2018-01-08 20:56:34 504

原创 SpringBoot+Dubbo+zookeeper整合

废话不多说 开整新建dubbo-parent  父工程 加入以下jar包parent> groupId>org.springframework.bootgroupId> artifactId>spring-boot-starter-parentartifactId> version>1.5.2.RELEASEversion>parent>properties

2018-01-06 17:56:59 8262 1

原创 LinkedList源码解析

LinkedList内部就是由链表的形式实现。它并没有用数组来存储数据元素,而是由一个个Node类型结点来储存数据,然后每个Node结点通过指向前后结点的next和prev指针将整个List串联起来 看一下成员变量transient int size = 0; 长度transient NodeE> first; 链表第一个节点的引用transient NodeE> la

2018-01-06 14:41:54 175

原创 Java源码之ArrayList

总体介绍Collection接口是集合类的根接口,Java中没有提供这个接口的直接的实现类。Set和List两个类继承于它。Set中不能包含重复的元素,也没有顺序来存放。而List是一个有序的集合,可以包含重复的元素。而Map又是另一个接口,它和Collection接口没有关系。Map包含了key-value键值对,同一个Map里key是不能重复的,而不同key

2017-12-05 21:44:04 200

Spring源码解析

Spring源码解析Spring源码解析Spring源码解析Spring源码解析Spring源码解析

2018-02-28

maven讲解实战

实战maven实战maven实战maven实战maven实战maven实战maven

2018-01-23

IntelliJ+IDEA+使用教程

IntelliJ+IDEA+使用教程IntelliJ+IDEA+使用教程IntelliJ+IDEA+使用教程

2018-01-23

Logback中文文档

Logback中文文档

2018-01-23

深入理解Nginx模块开发与架构解析.

深入理解Nginx模块开发与架构解析.深入理解Nginx模块开发与架构解析.

2018-01-23

RabbitMq实战

RabbitMq实战RabbitMq实战RabbitMq实战RabbitMq实战RabbitMq实战RabbitMq实战

2018-01-23

java8新特性

java8新特性java8新特性java8新特性java8新特性java8新特性

2018-01-23

java虚拟机深入了解

java虚拟机深入了解java虚拟机深入了解java虚拟机深入了解java虚拟机深入了解java虚拟机深入了解

2018-01-22

空空如也

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

TA关注的人

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