- 博客(22)
- 资源 (3)
- 收藏
- 关注
原创 03节-最佳实践
配置的覆盖规则以 timeout 为例,下图显示了配置的查找顺序,其它 retries, loadbalance, actives 等类似:方法级优先,接口级次之,全局配置再次之。如果级别一样,则消费方优先,提供方次之。其中,服务提供方配置,通过 URL 经由注册中心传递给消费方。其余的配置信息,以及dubbo的功能,可以通过查看dubbo官网的文档。http://dubbo.a...
2019-07-09 08:37:01 120
原创 02节-实战示例
文章目录1. 创建聚合项目demo-dubbodubbo-clientdubbo-provider2. 代码编写接口创建providercomsumer启动测试3. 实战-隐式传参+过滤器MDClogback.xml生产者过滤器消费者过滤器编写测试类日志查看4. 实战-异步调用同步-异步,不等待生产者结果异步-异步,消费者调用生产者后,先处理自己逻辑,在等待生产者结果返回生产者配置消费者测试测试源...
2019-07-09 08:35:45 221
原创 01节-初学dubbo
文章目录1. dubbo架构节点角色说明节点启动流程思考的问题2. XML配置XML Schema标签示例不同粒度配置的覆盖关系3. 常用功能隐式传参参数验证过滤器扩展说明扩展接口扩展配置已知扩展扩展示例异步调用(V2.7三大新特性之一)Consumer异步调用使用CompletableFuture签名的接口使用RpcContext重载服务接口Provider异步执行定义CompletableFu...
2019-07-09 08:33:21 181
原创 JVM学习08节-类加载机制
类加载机制文章目录类加载机制1. 学习目标2. 什么是类加载3. 类加载的过程3.1 生命周期3.2 加载3.3 校验3.4 准备3.5 解析3.6 初始化4. 类加载器4.1 启动类加载器4.2 扩展类加载器4.3 应用程序类加载器5. 双亲委派模型5.1 什么是双亲委派模型?5.3 工作过程5.4 代码实现5.2 破坏双亲委派模型1. 学习目标什么是类加载类加载的过程类加载器双亲...
2019-05-16 09:53:37 114
原创 JVM学习06节-G1收集器
G1垃圾收集器文章目录G1垃圾收集器1. 总览1. 总览首先是内存划分上,之前介绍的分代收集器将整个堆分为年轻代、老年代和永久代,每个代的空间是确定的。而 G1 将整个堆划分为一个个大小相等的小块(每一块称为一个 region),每一块中的内存是连续的。和分代算法一样,G1 中每个块也会充当 Eden、Survivor、Old 三种角色,但是它们不是固定的,这使得内存使用更加地灵活。在...
2019-05-16 09:06:45 166
原创 JVM学习05节-垃圾收集
垃圾收集文章目录垃圾收集1. 对象已死吗1.1 引用计数算法(ReferenceCounting)1.2 可达性分析算法(Reachability Analysis)1.3 对象的自我拯救2. 垃圾收集算法2.1 分代收集2.2 分区收集2.1.1 复制算法2.1.2 标记-清除算法2.1.3 标记-整理算法3. 垃圾收集器3.1 CMS 垃圾收集器(Concurrent Mark Sweep)...
2019-05-13 13:23:31 459
原创 JVM学习04节-内存分配
内存分配文章目录内存分配1. 前言1.1 类、对象、实例1.2 对象的创建1.3 引用的分类2. GC常见配置及日志分析2.1 GC配置2.2 GC分类2.3 GC日志分析3. 内存分配算法3.1 指针碰撞3.2 空闲列表3.3 内存分配小结3.4 内存分配时的原子性4. 内存分配规则4.1 对象优先在Eden分配4.2 大对象直接进入老年代4.3 长时间存活的对象将进入老年代4.4 动态年龄的...
2019-05-09 18:30:12 143
原创 JVM学习03节-逃逸分析(JIT编译优化)
逃逸分析文章目录逃逸分析1. 简述2. 逃逸分析 Escape Analysis2.1 栈上分配2.2 同步消除(锁消除)2.3 标量替换2. 逃逸分析测试3.1 栈上分配测试3.2 同步消除测试3.3 标量替换测试1. 简述首先了解即时编译器(Just-in-time Compilation,JIT)的优化技术(大概小一百个吧),只学习逃逸分析即可。在《JVM运行时数据区域》章节中我们说过...
2019-04-29 19:25:01 268
原创 JVM学习02节-JVM演变,元空间学习
JVM运行时数据区域文章目录JVM运行时数据区域1. 运行时数据区图解2. 程序计数器2.1 程序计数器是什么2.2 为什么要每个线程都要有一个独立的程序计数器2.3 程序计数器有什么特点3. 虚拟机栈3.1 虚拟机栈是什么3.2 栈帧是什么3.3 栈有什么特点3.4 栈中的局部变量表存储的是什么4. 本地方法栈5. 堆5.1 堆是什么5.2 堆有什么特点6. 方法区6.1 什么是方法区6.2 ...
2019-04-29 19:23:59 163
原创 JVM学习01节-运行时数据区域
JVM运行时数据区域文章目录JVM运行时数据区域1. 运行时数据区图解2. 程序计数器2.1 程序计数器是什么2.2 为什么要每个线程都要有一个独立的程序计数器2.3 程序计数器有什么特点3. 虚拟机栈3.1 虚拟机栈是什么3.2 栈帧是什么3.3 栈有什么特点3.4 栈中的局部变量表存储的是什么4. 本地方法栈5. 堆1. 运行时数据区图解 从上图可以看出,运行时数据区主要分为5个部...
2019-04-24 17:37:08 121
原创 排序算法-08归并排序
归并排序文章目录归并排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现1. 算法概述归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。2. 算法原理归并操作(merge),也叫归并算法,指的是将两个顺序序列合并成...
2019-04-21 21:53:29 172
原创 排序算法-07堆排序
堆排序文章目录堆排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现1. 算法概述堆排序是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。堆分两种大顶堆:每个节点的值都大于或等于其子节点的值小顶堆:每个节点的值都小于或等于其子节点...
2019-04-19 21:05:00 119
原创 排序算法-06选择排序
选择排序文章目录选择排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现5. 算法优化1. 算法概述选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了吧。2. 算法原理首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序元素中继续寻找最小(大)...
2019-04-19 13:29:20 255
原创 排序算法-05希尔排序
希尔排序文章目录希尔排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现1. 算法概述是直接插入排序算法的一种更高效的改进版本,希尔排序是非稳定排序算法。它与插入排序的不同之处在于,它会优先比较距离较远的元素。希尔排序又叫缩小增量排序。2. 算法原理希尔排序的思想是使数组中任意间隔为h(步长)的元素是有序的。这样的数组也称为h有序数组,也即一个数组是h个互相独立的有序数组交叉编制...
2019-04-17 22:22:32 311
原创 排序算法-04插入排序
插入排序文章目录插入排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现5. 算法优化1. 算法概述插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入,适用于少量数据的排序。一般来说,插入排序都采用in-place在数组上实现。in-place操作,意思是所有的操...
2019-04-17 22:21:14 84
原创 排序算法-03快速排序
快速排序文章目录快速排序1. 算法概述2. 图解3. 代码实现(挖坑填位)4. 算法优化4.1 减少因交换元素而创建临时变量4.2 优化枢轴(基准元素)的选取方式4.3 优化小数组时的排序方案4.4 参考博文1. 算法概述快速排序的基本思想:通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。快速排...
2019-04-15 22:17:14 383
原创 排序算法-02冒泡排序
冒泡排序文章目录冒泡排序1. 算法概述2. 算法原理3. 动图演示4. 代码实现5. 算法优化5.1 减少非必要的比较5.2 鸡尾酒排序(双向冒泡排序)1. 算法概述冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交...
2019-04-13 09:54:05 141
原创 排序算法-01算法概述
排序算法文章目录排序算法1. 算法概述2. 算法复杂度3. 相关概念4. O,n, log, k 的区别1. 算法概述常见的排序算法可以分为两类,一是基于比较的排序算法,二是不基于比较的排序算法。比较类算法:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。非比较类算法:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时...
2019-04-13 09:52:58 169
原创 查找算法-01二分查找
二分查找文章目录二分查找1. 算法说明2. 算法原理3. 动图演示4. 代码实现5. 算法变形5.1 查找目标在集合中第一次出现的位置5.2 图解5.3 查找目标在集合中最后一次出现的位置1. 算法说明摘自百度百科:二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。从上述说明文字,我们...
2019-04-13 09:50:21 239
原创 包装类valueOf()详解(xCache内部类)
e==f@[TOC]包装类valueOf()方法中的xCache类最近面试遇到了一道基础题。题目如下Integer a = new Integer(120);Integer b = new Integer(120);System.out.println(a == b);Integer c = 120;Integer d = 120;System.out.println(c == ...
2019-03-21 21:25:48 319
Diffblue Cover Community Edition 免费的单测自动生成神器
2022-12-15
Diffblue Cover Community Edition 免费的单测自动生成神奇
2022-12-15
阿里巴巴Java开发手册v1.4.0-20180520.zip
2019-06-26
Netty权威指南(第2版)(李林峰)-书签目录-完整版.zip
2019-05-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人