自定义博客皮肤

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

普通项目改造分布式,引入dubbo+zookeeper以及使用maven生成可执行的dubbo服务jar包

一、背景 假如当前有一个系统,里面包含了用户模块、积分模块、商城模块...等等等,非分布式的做法是开一个web工程,把所有的模块放到同一个系统中,前端web页面也放其中,称为单体工程。很明显,这种做法会产生很多问题,臃肿、扩展延伸性差、性能瓶颈低、不利研发分组等。在分布式下则不同,每个模块都成为...

2019-08-23 21:21:09

阅读数 11

评论数 0

解析网络通讯协议,TCP连接三次握手,断开四次挥手

参考文献https://www.cnblogs.com/onepixel/p/7092302.html,这篇文章写得很好。 什么是tcp? tcp是tcp/ip协议族中很重要的一个协议,位于第二层传输层,上层就是我们熟悉的http、ftp等应用协议,其兄弟协议是udp协议。 在上篇文章中有提...

2019-07-31 16:38:18

阅读数 32

评论数 0

解析网络通讯协议,http协议报文头部解析

HTTP协议的请求和响应报文中必定包含HTTP报文头部,也称为首部。首部内容分别为客户端和服务器处理请求和响应提供所需要的信息。本质上来说,首部包含一些名/值对的数值,类似于键值对。单个HTTP首部字段可以有多个值,用逗号分隔. 首部的分类: 通用首部:既可出现在请求报文中,也可出现在响应报文...

2019-07-08 19:13:28

阅读数 70

评论数 0

解析网络通讯协议,详解http协议

一、http是什么 http是指HyperText Transfer Protocol,超文本传输协议,是一种详细规定了浏览器和万维网(WWW = World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。它可以使浏览器更加高效,使网络传输减少。也可以理解成...

2019-07-04 16:02:05

阅读数 46

评论数 0

时间很快,真的很快,快的让人抓不住,转眼间距离上篇博客已经三个月

随便写写 清空了手机所有的娱乐app,希望不再浪费时间在手机上了,多留点空闲时间给自己,就算是发呆...,在这个快时代,其实发呆对自己也很有帮助,感觉现在人都太缺时间了,手机一抱就一上午,douyin一开就一晚上过去了,让我想起李建在湖南卫视开玩笑的一句话,别人找他要微信,他说:我没有微信,我人...

2019-07-02 11:03:58

阅读数 50

评论数 0

源码解析java集合框架,LinkedHashSet源码

一、LinkedHashSet解读 LinkedHashSet继承自HashSet,实现了Set接口,底层是由LinkedHashMap实现,构造方法调用的都是LinkedHashMap的构造方法,LinkedHashSet底层使用LinkedHashMap来保存所有元素,上篇博客中对Linke...

2019-04-02 09:41:13

阅读数 41

评论数 0

源码解析java集合框架,LinkedHashMap源码

一、LinkedHashMap解读 LinkedHashMap类的层次结构: LinkedHashMap实现了Map<K,V>接口,继承HashMap类。 LinkedHashMap继承自HashMap,底层数据结构大体相似,都有数组+单向链表+红黑树,L...

2019-04-01 21:26:10

阅读数 30

评论数 0

源码解析java集合框架,TreeSet源码

一、TreeSet剖析 TreeSet与TreeMap数据结构底层都是红黑树,区别就是每个数据的结构不一样,TreeMap存储的是key-value键值对,TreeSet值存储一个值,且值是存放在TreeMap的键之上,TreeSet底层实现就是TreeMap,底层都是红黑树。 TreeSe...

2019-03-29 14:22:31

阅读数 27

评论数 0

源码解析java集合框架,TreeMap源码

一、TreeMap剖析 TreeMap是Map接口下一个实现类,基于键值对来存储每个数据,TreeMap是一个有序集合,顺序是key值的插入顺序,每个元素对象必须实现比较器,底层数据结构是一颗红黑树,之前在介绍HashMap时也有提到过红黑树,HashMap底层是数组链表红黑树,而TreeMap...

2019-03-29 11:55:38

阅读数 42

评论数 0

源码解析java集合框架,HashSet源码

一、HashSet解读 在讲HashSet底层数据结构之间我们不妨先来浏览下HashSet的源码,因为它很懒,为什么说它懒,是因为它底层是用的HashMap,没有自己的实现,甚至一些常量都是直接用的HashMap中的,数组初始化容量、装载因子等。 /** * Constructs ...

2019-03-27 15:17:22

阅读数 30

评论数 0

源码解析java集合框架,HashMap源码

一、HashMap剖析 HashMap与ArryList、LinkedList不同,HashMap是Map接口下的实现类。Map接口和List接口无关联,且是集合两大根接口。HashMap是以键值对(key-value)形式存储每个元素数据,底层数据结构在1.8前是“数组+链表”,1.8后是“数...

2019-03-25 15:40:55

阅读数 32

评论数 0

源码解析java集合框架,LinkedList源码

一、LinkedList剖析 LinkedList也是List接口下的一个实现类,LinkedList是一个双向链表,底层数据结构为双向链表。 LinkedList数据结构 LinkedList采用双向链表存储方式,优缺点如下 缺点:遍历、随机访问元素效率低下。 优点:插入、删...

2019-03-20 15:31:44

阅读数 73

评论数 0

源码解析java集合框架,ArrayList源码

一、ArrayList剖析 ArrayList是List接口下的一个实现类,ArrayList是一个动态数组,底层数据结构为可以动态增长的数组,相比数组来说,ArrayList可以动态的增加删除元素,有成熟的扩容算法。 0 1 2 3 4 ...

2019-03-20 14:09:32

阅读数 32

评论数 0

源码解析java集合框架,集合类

一、java集合类框架 二、说明 集合框架主要是由两大接口派生出:Collection和Map,作为集合顶层根接口,以此派生出接口、抽象类、普通类。 集合接口,区分不同类型的集合类型,是集合框架顶层的基础。 抽象类,对不同集合接口进行部分实现,为派生的实现类做好基础。 实现类,抽...

2019-03-19 13:31:44

阅读数 28

评论数 0

深入java多线程,深入理解volatile使用与原理

1、认识volatile volatile是用来修饰变量的。与synchronized不同,synchronized是用来修饰方法和代码块。volatile称之为轻量级锁,被volatile修改的变量在各个线程之间是可见的,保持线程之间的可见性,可见性是指多个线程共享同一个变量,当一个线程修改了...

2019-03-14 14:06:38

阅读数 26

评论数 0

深入java多线程,单例设计模式

1、概念 单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式三大要点: 一个类只能有一个对象实例 必须由自身创建这个实例 必须对整个系统提供这个实例,需要有对外提供实例的方法 单例模式分为饿汉式和懒汉式:...

2019-03-13 14:39:54

阅读数 23

评论数 0

深入java多线程,多线程问题及synchronized的jvm原理

1、多线程安全新问题 什么时候会出现多线程问题以及出现多线程问题的条件有哪些,下面通过一个简单的例子来看下。 假如系统中需要生成累加不重复的数字,用来设置单号或流水号,我们通过一段简单的代码来实现: public class Thread4 { private int num; ...

2019-03-12 15:28:00

阅读数 43

评论数 0

深入java多线程,多线程状态及转换

1、线程状态值 在一个时间点,每个线程有且只有一种状态,反应线程当前的状况。 在Thread类中用枚举定义了线程的6中状态: /** * A thread state. A thread can be in one of the following states: *...

2019-03-11 14:32:45

阅读数 50

评论数 0

深入java多线程,认识多线程

1、什么是多线程? 讲到线程,不得不提到进程,而进程跟操作系统相关联。一个进程对应的是一个运行中的应用程序,我们平时上的QQ、浏览器都会有相对应的进程,进程是操作系统运行的基本单位,一个应用程序可能有多同时运行的进程。每个进程都有独立的内存空间。在Windows系统中,一个运行的exe就是一个进...

2019-03-08 10:56:45

阅读数 46

评论数 0

解析spring源码,IOC之bean的创建与获取

本文主要内容及做什么 主要针对spring中的ioc,采用debug方式讲解spring如何创建和获取bean,承接上篇博客解析spring源码,IOC加载bean资源配置文件 test代码为: public class test { public static void main(S...

2019-03-01 15:13:46

阅读数 70

评论数 0

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