<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zcf9916的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zcf9916</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zcf9916]]></copyright><item><title><![CDATA[一.hadoop 使用Docker安装配置]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84919492</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84919492</guid><author>zcf9916</author><pubDate>Sun, 22 Apr 2018 22:25:48 +0800</pubDate><description><![CDATA[
 
一.安装hadoop 
   (这里需要有一定的docker知识)
   1.安装镜像
      我们抛弃了传统的vm方式,使用docker来安装部署hadoop.首先要准备一个镜像，可以使用Dockerfile构建一个合适自己的镜像，或者可以在共有仓库中找一个具有hadoop环境的镜像来使用也可以。由于我是配置的阿里云的加速器，所以在阿里云的仓库中找了一个具有hadoop环境的...]]></description><category></category></item><item><title><![CDATA[java知识点总结]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84919087</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84919087</guid><author>zcf9916</author><pubDate>Mon, 16 Apr 2018 10:22:55 +0800</pubDate><description><![CDATA[
线程类:
 1.start是在主线程执行,run是新开启一个线程执行
 2. synchronized是对类的当前实例进行加锁，static synchronized是对类进行加锁.
     
pulbic class Something(){
         public synchronized void isSyncA(){}
         public synchr...]]></description><category></category></item><item><title><![CDATA[mysql 之 schema与数据类型优化]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84918760</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84918760</guid><author>zcf9916</author><pubDate>Wed, 11 Apr 2018 09:43:15 +0800</pubDate><description><![CDATA[
一.选择优化的数据类型
 
    1.更小的通常更好:如果只要保存1~200,tinyint unsigned更好.因为占用更小的内存和磁盘空间.
    2.简单就好: 简单数据类型需要更小的CPU时间周期.例如:整型比字符操作代价更低(字符集的问题).使用mysql自带类型取代字符串(date,datetime),使用整型存储IP.
    3.尽量避免Null:单列索引无法储n...]]></description><category></category></item><item><title><![CDATA[数据库mvcc机制]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84917033</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84917033</guid><author>zcf9916</author><pubDate>Mon, 05 Mar 2018 23:21:55 +0800</pubDate><description><![CDATA[转载:http://blog.youkuaiyun.com/whoamiyang/article/details/51901888

1. MVCC简介
1.1 什么是MVCC
MVCC是一种多版本并发控制机制。
1.2 MVCC是为了解决什么问题?

大多数的MYSQL事务型存储引擎,如,InnoDB，Falcon以及PBXT都不使用一种简单的行锁机制.事实上,他们都和MVCC–多版本并发控制...]]></description><category></category></item><item><title><![CDATA[redis的持久化]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84916543</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84916543</guid><author>zcf9916</author><pubDate>Thu, 22 Feb 2018 18:50:44 +0800</pubDate><description><![CDATA[
            redis持久化
 
一. RDB持久化
   1.1 RDB持久化的一些特性
   用save(阻塞)和bgsave(非阻塞,派生一个子进程来处理)可以生成RDB文件.
   因为AOF文件的更新频率比RDB高,所以如果开启了AOF会优先使用AOF来还原数据库状态.
   服务器在载入RDB文件期间会一直阻塞,直到完成.
  
   1.2  自动保存...]]></description><category></category></item><item><title><![CDATA[redis对象类型]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84916521</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84916521</guid><author>zcf9916</author><pubDate>Thu, 22 Feb 2018 14:28:52 +0800</pubDate><description><![CDATA[
 
    redis对象类型
      redis并没有用我们先前提到的的主要数据结构:SDS,链表,字典,压缩列表,跳跃列表作为redis对象的直接实现.而是基于这些数据 结构创建一个对象系统.
      这个系统包括了字符串对象,哈希对象,列表对象,集合对象和有序集合对象.每种对象都至少用到了一个我们前面介绍的数据结构.
一.对象类型以及编码
     redis使用对象表示...]]></description><category></category></item><item><title><![CDATA[mysql  分页语句优化]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915740</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915740</guid><author>zcf9916</author><pubDate>Tue, 30 Jan 2018 11:25:17 +0800</pubDate><description><![CDATA[
 测试数据表结构
 
   现在有两张表   customer,以及order_test, customerId的主键是order_test的外键
   
CREATE TABLE `customer` (
  `customerId` int(11) NOT NULL AUTO_INCREMENT,
  `phone` varchar(11) NOT NULL COMMENT '...]]></description><category></category></item><item><title><![CDATA[mysql  explain 各个字段的含义]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915739</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915739</guid><author>zcf9916</author><pubDate>Tue, 30 Jan 2018 11:16:27 +0800</pubDate><description><![CDATA[
 
 
1）、id列数字越大越先执行，如果说数字一样大，那么就从上往下依次执行，id列为null的就表是这是一个结果集，不需要使用它来进行查询。
 
2）、select_type列常见的有：
A：simple：表示不需要union操作或者不包含子查询的简单select查询。有连接查询时，外层的查询为simple，且只有一个
B：primary：一个需要union操作或者含有子查询的s...]]></description><category></category></item><item><title><![CDATA[mysql常用引擎的基本特性]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915524</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915524</guid><author>zcf9916</author><pubDate>Thu, 25 Jan 2018 16:48:47 +0800</pubDate><description><![CDATA[
mysql常用的三种引擎
 
      (1)  MyISAM存储引擎
            不支持事务、也不支持外键，支持全文索引优势是访问速度快，对事务完整性没有 要求或者以select，insert为主的应用基本上可以用这个引擎来创建表支持3种不同的存储格式，分别是：静态表；动态表；压缩表
             静态表：表中的字段都是非变长字段，这样每个记录都是固定长度的...]]></description><category></category></item><item><title><![CDATA[MySQL索引背后的数据结构及算法原理]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915515</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915515</guid><author>zcf9916</author><pubDate>Thu, 25 Jan 2018 16:15:30 +0800</pubDate><description><![CDATA[

索引的本质

MySQL官方对索引的定义为：索引（Index）是帮助MySQL高效获取数据的数据结构。提取句子主干，就可以得到索引的本质：索引是数据结构。
我们知道，数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快，因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找（linear search），这种复杂度为O(n)的算法在数据量很大...]]></description><category></category></item><item><title><![CDATA[红黑树 与 B+树区别和应用场景]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915506</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915506</guid><author>zcf9916</author><pubDate>Thu, 25 Jan 2018 14:51:02 +0800</pubDate><description><![CDATA[


红黑树
红黑树是每个节点都带有颜色属性的二叉查找树，颜色或红色或黑色。在二叉查找树强制一般要求以外，对于任何有效的红黑树我们增加了如下的额外要求:
1. 节点是红色或黑色
2. 根节点是黑色。
3 每个叶节点（NIL节点，空节点）是黑色的。
4 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)
5. 从任一节点到其每个叶子的所有路径都...]]></description><category></category></item><item><title><![CDATA[Zookeeper介绍]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915415</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915415</guid><author>zcf9916</author><pubDate>Wed, 24 Jan 2018 11:07:31 +0800</pubDate><description><![CDATA[
 
Zookeeper介绍
 Zookeeper特性 
 
     zookeeper是一个开源的分布式协调服务.设计的目标是将那些复杂容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集.
     一致性
        从同一个客户端发起的事务请求,最终在zookeeper会按顺序执行.
    原子性
        所有事务请求的处理结果在所有节点上都是一致...]]></description><category></category></item><item><title><![CDATA[使用Zookeeper]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915355</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915355</guid><author>zcf9916</author><pubDate>Tue, 23 Jan 2018 15:00:15 +0800</pubDate><description><![CDATA[
  
一.部署与运行
      1.系统环境
         zk支持绝大多少操作系统.不过需要注意的是,FreeBsd系统的JVM对JAVA的NIO支持的不是很好,不建议在该系统上部署生产环境.
      2.java环境
        建议使用jdk1.6或者以上的版本.
      3.集群或者单机
         
          3.1集群模式需要至少三...]]></description><category></category></item><item><title><![CDATA[shell 截取变量]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915130</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915130</guid><author>zcf9916</author><pubDate>Thu, 18 Jan 2018 14:30:22 +0800</pubDate><description><![CDATA[
假设有变量 var=http://www.aaa.com/123.htm.
1. # 号截取，删除左边字符，保留右边字符。





1




echo ${var#*//}







 其中 var 是变量名，# 号是运算符，*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 ：www.aaa.com/123.htm...]]></description><category></category></item><item><title><![CDATA[vi常用命令]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915126</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915126</guid><author>zcf9916</author><pubDate>Thu, 18 Jan 2018 14:22:14 +0800</pubDate><description><![CDATA[
空格键 向右移动一格
x 删除后面的字符 X 删除前一个字符  删除3个字符就是3x  
dd:删除一行   D 删除到行尾 
caw:改写单词  c 相当于 d 变为编辑模式
J:删除换行符，使下一行并上来。     nJ:连接后面的n行
u:撤销上一次操作      U:撤销当前行的所有修改
ctrl+r:对撤消的撤消
i 在光标前插入
I 在行首插入 a 在光标后插入
A...]]></description><category></category></item><item><title><![CDATA[第八章   Class装载系统]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915067</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915067</guid><author>zcf9916</author><pubDate>Wed, 17 Jan 2018 16:05:32 +0800</pubDate><description><![CDATA[
Class装载系统
一.class文件的装载过程
   class文件通常以文件的形式存在,只有被虚拟机装载的class类型才能在程序中使用.系统装载CLass类型可以分为加载,连接和初始化.
     1.1类装载的条件
    Class只有在必须要使用的时候才会被加载,一个类或者接口在初次使用前必须要初始化. 被动使用不会引起类的初始化.
     下面的例子,只会初始化Par...]]></description><category></category></item><item><title><![CDATA[第七章   java堆]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84915002</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84915002</guid><author>zcf9916</author><pubDate>Tue, 16 Jan 2018 14:53:41 +0800</pubDate><description><![CDATA[
 
 java堆
一.内存溢出的原因
     
    1.堆溢出
        当堆中强引用对象占用了大部分空间,导致内存无法回收,对象大小之和大于-Xmx就会导致堆溢出.
    2.直接内存溢出
        下面的代码申请直接内存，导致直接内存溢出 . 当JAVA进程的所有内存之和(堆空间,栈空间,直接内存,以及虚拟机自身所用的内存)大于-Xmx *2的时候,就会出...]]></description><category></category></item><item><title><![CDATA[第四篇 垃圾回收器以及内存分配]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84914985</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84914985</guid><author>zcf9916</author><pubDate>Tue, 16 Jan 2018 10:54:44 +0800</pubDate><description><![CDATA[
垃圾回收器以及内存分配
 
 
一.垃圾回收器
 
 
       1.串行回收器
 
           它分为新生代串行回收器和老年代串行回收器
 
          1.1新生代串行回收器
             它有两个特点:单线程，独占式。在实时性要求高的系统，这个是不可接收的.
  
                     新生代串行处理器默认使...]]></description><category></category></item><item><title><![CDATA[第三篇   JVM垃圾回收算法以及引用类型]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84914960</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84914960</guid><author>zcf9916</author><pubDate>Mon, 15 Jan 2018 16:54:11 +0800</pubDate><description><![CDATA[
 
JVM垃圾回收算法以及引用类型
 一.垃圾回收算法
 
  垃圾回收是java体系最重要的组成部分之一.垃圾回收顾名思义就是把不用的对象给丢弃,释放内存空间.
  接下来来看看java垃圾回收机制的理论基础:引用技术法,标记压缩法,标记清楚法,复制算法和分代分区.
   
  1.引用技术法
 
   引用计算法的实现很简单,对于一个对象a，只要有任何一个根对象引用它,那...]]></description><category></category></item><item><title><![CDATA[第二篇   jvm常用参数]]></title><link>https://blog.youkuaiyun.com/zcf9916/article/details/84914955</link><guid>https://blog.youkuaiyun.com/zcf9916/article/details/84914955</guid><author>zcf9916</author><pubDate>Mon, 15 Jan 2018 16:10:52 +0800</pubDate><description><![CDATA[
不同的jvm参数可以在gc信息中显示出不同的内容,我们先来学习以下简单的gc信息.
  
 开启-XX:+PrintGCDetails参数,运行java程序查看gc信息
 
[GC (System.gc()) [PSYoungGen: 523K-&amp;gt;368K(4608K)] 523K-&amp;gt;376K(15872K(可用堆大小)), 0.0014747 secs] [Times: ...]]></description><category></category></item></channel></rss>