<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wade_2hou的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wade_2hou</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wade_2hou]]></copyright><item><title><![CDATA[Mysql——InnoDB存储引擎索引]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/96601011</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/96601011</guid><author>wade_2hou</author><pubDate>Sun, 21 Jul 2019 15:59:55 +0800</pubDate><description><![CDATA[索引是程序设计和开发的一个重要方面。若索引太多，应用程序的性能可能会受到影响（插入和删除时会对表上的索引进行调整），而索引太少，对查询性能又会有影响。所以需要找到一个合适的平衡点。
InnoDB存储引擎支持的集中常见索引：
B+树索引
全文索引
哈希索引
一、B+树索引
B+树索引并不能找到一个给定键值的具体行，B+树索引能找到的只是被查找数据行所在的页。然后数据库通过把页读到内存，再在内存中进行...]]></description><category></category></item><item><title><![CDATA[Mysql——B-Tree、B+Tree基础]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/96460518</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/96460518</guid><author>wade_2hou</author><pubDate>Thu, 18 Jul 2019 22:08:32 +0800</pubDate><description><![CDATA[https://aotu.io/notes/2016/08/16/nginx-https/index.html
https://blog.youkuaiyun.com/sinat_36722750/article/details/82946311

]]></description><category></category></item><item><title><![CDATA[JVM——Synchronized]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/96164963</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/96164963</guid><author>wade_2hou</author><pubDate>Thu, 18 Jul 2019 20:46:40 +0800</pubDate><description><![CDATA[一、逃逸分析
逃逸分析（Escape Analyis）是目前Java虚拟机中比较前言的优化技术，它与类型继承关系分析一样，并不是直接优化代码的手段，而是为其他优化手段提供依据的分析技术。
逃逸分析的基本行为就是分析对象动态作用域：当一个对象在方法中被定义后，它可能被外部方法所引用，例如作为调用参数传递到其他方法中，称为方法逃逸。甚至还有可能被外部线程访问到，譬如赋值给类变量或可以在其他线程中访问的...]]></description><category></category></item><item><title><![CDATA[JVM——Java内存模型与线程]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/96179577</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/96179577</guid><author>wade_2hou</author><pubDate>Wed, 17 Jul 2019 21:59:50 +0800</pubDate><description><![CDATA[Java虚拟机规范中试图定义一种Java内存模型（JMM）来屏蔽掉各种硬件和操作系统的内存访问差异，以实现让Java程序在各种平台下都能达到一致的内存访问效果。
1.1、主内存与工作内存
Java内存模型的主要目标是定义程序中各个变量的访问规则，即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量（Variables）与Java编程中所说的变量有所区别，它包括实例字段、静态字段...]]></description><category></category></item><item><title><![CDATA[JVM——类加载器]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95933241</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95933241</guid><author>wade_2hou</author><pubDate>Mon, 15 Jul 2019 20:31:35 +0800</pubDate><description><![CDATA[在java虚拟机中，任意一个类，都需要由加载它的类加载器和这个类本身一同确定其在Java虚拟机中的唯一性，每一个类加载器，都拥有一个独立的类名称空间。就是说，比较两个类是否”相等“，只有在这两个类是由同一个类加载器加载的前提下才有意义，否则，即使这两个类来源于同一个Class文件，被同一个虚拟机加载，只要加载它们的类加载器不同，那这两个类就必不相等。

...]]></description><category></category></item><item><title><![CDATA[JVM——虚拟机类加载机制]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95905404</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95905404</guid><author>wade_2hou</author><pubDate>Sun, 14 Jul 2019 22:05:52 +0800</pubDate><description><![CDATA[虚拟机把类描述类的数据从Class文件加载到内存，并对数据进行校验、转换解析和初始化，最终形成可以被虚拟机直接使用的Java类型，这就是虚拟机的类加载机制
一、类加载的时机
类从被加载到虚拟机内存中开始，到卸载出内存为止，它的整个生命周期包括：加载、验证、准备、解析、初始化、使用和卸载。其中验证、准备、解析三个部分统称为连接。

加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的，类的加载过程...]]></description><category></category></item><item><title><![CDATA[JVM——虚拟机性能监控（七）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95527900</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95527900</guid><author>wade_2hou</author><pubDate>Thu, 11 Jul 2019 22:06:45 +0800</pubDate><description><![CDATA[打发士

]]></description><category></category></item><item><title><![CDATA[JVM——对象分配（六）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95524400</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95524400</guid><author>wade_2hou</author><pubDate>Thu, 11 Jul 2019 22:05:18 +0800</pubDate><description><![CDATA[一、内存分配与回收策略
内存分配往大方向讲，就是在堆上分配，对象主要分配在新生代的Eden区上，如果启动了本地线程分配缓冲（TLAB），将按线程优先在TLAB上分配。少数情况下也可以直接分配在老年代中，分配的规整并不是百分百固定的，其细节取决于当前使用的是哪一种垃圾收集器组合，还有虚拟机与内存的相关参数。
1.1、对象优先在Eden分配
大多数情况下，对象在新生代Eden区中分配，当Eden区没有...]]></description><category></category></item><item><title><![CDATA[JVM——垃圾收集器（五）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95383847</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95383847</guid><author>wade_2hou</author><pubDate>Thu, 11 Jul 2019 21:06:57 +0800</pubDate><description><![CDATA[todo

]]></description><category></category></item><item><title><![CDATA[JVM——垃圾收集算法（四）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95362155</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95362155</guid><author>wade_2hou</author><pubDate>Wed, 10 Jul 2019 21:33:50 +0800</pubDate><description><![CDATA[一、垃圾收集算法
1.1、标记-清除
该算法分为“标记”和“清除”两个阶段：首先标记出所有需要回收的对象，在标记完成后统一回收被标记的对象，标记过程在前一章节中已经介绍过。它是最基础的收集算法，后续的收集算法都是基于这种思路并对其不足进行改进。它的不足主要有两个：一个是效率问题，标记和清除两个过程的效率都不高，另一个是空间问题，标记清除后会产生大量连续的内存碎片，空间碎片太多可能会导致以后在运行过...]]></description><category></category></item><item><title><![CDATA[JVM——垃圾收集器与内存分配策略（三）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/95239799</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/95239799</guid><author>wade_2hou</author><pubDate>Tue, 09 Jul 2019 22:28:55 +0800</pubDate><description><![CDATA[对于垃圾收回我们主要关注3件事情：
1.哪些内存需要回收？
2.什么时候回收？
3.如何回收？
在java内存运行时区域的各个部分，其中程序计数器、虚拟机栈、本地方法栈这3个区域随线程而生，随线程而灭。栈中的栈帧随着方法的进入和退出而有条不紊地执行这入栈和出栈，每一个栈帧中分配多少内存基本在类结构确定下来时就已知的，因此在这一个区域的内存分配和回收都具备确定性，不需要过多考虑回收的问题。
而jav...]]></description><category></category></item><item><title><![CDATA[JVM——java对象的创建和访问（二）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/94895496</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/94895496</guid><author>wade_2hou</author><pubDate>Sat, 06 Jul 2019 23:49:31 +0800</pubDate><description><![CDATA[一、对象的创建
在Java程序运行的过程中无时无刻都有对象被创建出来。在虚拟机中单接受到创建对象（仅讨论普通对象的创建）命令时，虚拟机首先将检查这个指令的参数是否能在运行时常量池中定位到一个类的符号引用，并检查是否已经被加载、解析和初始化过。如果没有先要进行类的加载。在类加载通过后，虚拟机将为新生对象分配内存，对象所需的内存的大小在类加载完成后就可以完全确定。
1.1、内存的分配方式
内存分配有两...]]></description><category></category></item><item><title><![CDATA[JVM——虚拟机运行时数据区域（一）]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/94773419</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/94773419</guid><author>wade_2hou</author><pubDate>Sat, 06 Jul 2019 20:35:01 +0800</pubDate><description><![CDATA[关于虚拟机模块的文章都是基于JDK1.8来分析。
一、虚拟机运行时数据区域

1.2、程序计数器
程序计数器是一块较小的内存空间，可以看作是当前线程所执行代码的行号指示器。在虚拟机的概念里，字节码解

释器工作时就是通过改变

...]]></description><category></category></item><item><title><![CDATA[CompletableFuture的使用]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/94642589</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/94642589</guid><author>wade_2hou</author><pubDate>Thu, 04 Jul 2019 20:32:08 +0800</pubDate><description><![CDATA[CompletableFuture类的源码描述：
一个可以显式完成(设置其值和状态)，可以用作CompletionStage，支持在其完成时触发依赖函数和操作的CompletableFuture。
当两个或更多线程尝试去调用一个CompletableFuture实例的#complete，#completeExceptionally，#cancel方法时，只会有一个会成功。
此外，除了这些和与直接操...]]></description><category></category></item><item><title><![CDATA[CyclicBarrier的使用]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/94590783</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/94590783</guid><author>wade_2hou</author><pubDate>Wed, 03 Jul 2019 22:24:08 +0800</pubDate><description><![CDATA[public class CyclicBarrierTest {
    public static void main(String[] args) {
        final CyclicBarrier barrier = new CyclicBarrier(3, () -&gt; System.out.println("cyclicBarrier"));
        for (int...]]></description><category></category></item><item><title><![CDATA[CountDownLatch的使用]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/94588335</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/94588335</guid><author>wade_2hou</author><pubDate>Wed, 03 Jul 2019 20:55:44 +0800</pubDate><description><![CDATA[欢迎使用Markdown编辑器
你好！ 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章，了解一下Markdown的基本语法知识。
新的改变
我们对Markdown编辑器进行了一些功能拓展与语法支持，除了标准的Markdown编辑器功能，我们增加了如下几点新功能，帮助你用它写博客：

全新的界面设计 ，将会带来全新的写作体...]]></description><category></category></item><item><title><![CDATA[springboot2.0+版本创建dataSource时报异常]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/81706514</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/81706514</guid><author>wade_2hou</author><pubDate>Wed, 15 Aug 2018 18:27:22 +0800</pubDate><description><![CDATA[今天使用springboot2.0.2版本的时候配置阿里的druid的数据库连接池时，出现下面的异常。



以前使用springboot1.5的时候从没有出现过，折腾了一个多小时终于找到问题了

在启动类中加上如下配置就可以使用了

...]]></description><category></category></item><item><title><![CDATA[CentOS7中安装mysql数据库]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/80439901</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/80439901</guid><author>wade_2hou</author><pubDate>Thu, 24 May 2018 19:44:39 +0800</pubDate><description><![CDATA[1.执行命令下载安装包：



wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.升级包：



rpm -ivh mysql-community-release-el7-5.noarch.rpm



cd /etc/yum.repos.d/

3.安装：



yum -y install mysql-...]]></description><category></category></item><item><title><![CDATA[CentOS7中安装JDK的方法]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/80378354</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/80378354</guid><author>wade_2hou</author><pubDate>Sat, 19 May 2018 22:55:59 +0800</pubDate><description><![CDATA[1.下载前的准备，创建要存放安装包的文件并进入该文件： 2.通过wget下载JDK安装包：http后面为jdk的下载地址，可以在官网复制对应版本的下载地址。也可以通过其他方式获取（如FileZilla导入），我平时都是通过FileZilla软件传的。别问我这里为什么要用wget方式获取，哥只想说因为一个字——“逼格”。好像多了一个字！2.解压：3.配置环境变量编辑/etc/profile文件，在前...]]></description><category></category></item><item><title><![CDATA[Git客户端如何连接远程仓库]]></title><link>https://blog.youkuaiyun.com/wade_2hou/article/details/80375802</link><guid>https://blog.youkuaiyun.com/wade_2hou/article/details/80375802</guid><author>wade_2hou</author><pubDate>Sat, 19 May 2018 20:09:38 +0800</pubDate><description><![CDATA[前面两篇Git服务器的安装和配置（一）和Git服务器的安装与配置（二）已经搭建和配置好Git远程仓库了！现在我们就可以向远程仓库拉取和推送我们的代码了！安装本地git程序，Git下载地址。选择合适自己的版本下载，一直点下一步就可以安装完成！现在有两种情况，一：远程仓库为空，我们需要将我们的项目放入远程仓库。二：远程仓库有项目，我们需要拉取到本地。先说第二种阿飞是否第一种情况我们可以看成远程仓库有项...]]></description><category></category></item></channel></rss>