<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[QWER654786的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/QWER654786</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; QWER654786]]></copyright><item><title><![CDATA[Docker入门（五）- link连接容器]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367623</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367623</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 18:34:00 +0800</pubDate><description><![CDATA[link连接容器

当我们把每个单独的容器串起来就是我们的整个环境了

连接前两篇文章生成的mysql和redis容器
➜  docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS         ...]]></description><category></category></item><item><title><![CDATA[Docker入门（四）- 搭建redis]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367624</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367624</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 18:30:00 +0800</pubDate><description><![CDATA[搭建redis
1.下载redis镜像
➜  docker pull redis:3.2.8
5.7: Pulling from library/mysql
75a822cd7888: Pull complete
b8d5846e536a: Pull complete
b75e9152a170: Pull complete
832e6b030496: Pull complete
fe4a...]]></description><category></category></item><item><title><![CDATA[Docker入门（三） - 搭建mysql]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367620</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367620</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 18:29:00 +0800</pubDate><description><![CDATA[搭建mysql
1.下载mysql镜像
➜  docker pull mysql:5.7
5.7: Pulling from library/mysql
75a822cd7888: Pull complete
b8d5846e536a: Pull complete
b75e9152a170: Pull complete
832e6b030496: Pull complete
fe4a6c...]]></description><category></category></item><item><title><![CDATA[Docker入门（二） - Dockerfile]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367615</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367615</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 18:25:00 +0800</pubDate><description><![CDATA[Dockerfile
执行Dockerfile

FROM : 指定镜像
MAINTAINER  维护者
RUN  运行命令
CMD 为容器提供默认值
RUN 执行任何指令并提交结果，用于Dockerfile的下一步工作
EXPOSE 暴露端口号
ENV   环境变量
ADD   从复制新文件，目录或远程文件URL，并将它们添加到路径的映像文件系统。
COPY   从复制新文件或目录，并...]]></description><category></category></item><item><title><![CDATA[Docker入门（一） - 仓库、容器、镜像、数据卷]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367614</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367614</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 17:56:00 +0800</pubDate><description><![CDATA[Docker 是一个开源的应用容器引擎，让开发者可以打包他们的应用以及依赖包到一个可移植的容器中，然后发布到任何流行的 Linux 机器上，也可以实现虚拟化。容器是完全使用沙箱机制，相互之间不会有任何接口。
Docker的面世让我们解决很多工程上面的问题，下面来看一下Docker的特性和优点

`特性`
* 仓库 - 顾名思义，就是存放docker的一个整体仓库，可以通过redis、m...]]></description><category></category></item><item><title><![CDATA[玩转 Redis缓存 集群高可用]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367612</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367612</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 17:38:00 +0800</pubDate><description><![CDATA[Redis作为主流nosql，在高并发使用场景中都会涉及到集群和高可用的问题，有几种持久化？场景下的缓存策略怎么选？高可用方案怎么实现？集群有哪几种？跟着这几个问题，结合一些自己使用的经验来简单分析一下。

一.有哪些持久化
Redis有两种持久化的方式：`RDB` 和 `AOF`

RDB - 快照

通过预设频率write on copy来持久化数据（所以内存不宜设置超过物理内存的...]]></description><category></category></item><item><title><![CDATA[JAVA 常用集合内部机制原理]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367613</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367613</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 17:20:00 +0800</pubDate><description><![CDATA[对于常用的集合大家都不陌生，但是深入到内部原理可能都是一知半解，通过阅读源码理解如下。
ArrayList
ArrayList内部就是一个默认大小为10的动态对象数组容器，每当add一个新数据的时候，如果大于原来的容器大小，则会通过Arrays.copyOf把容器大小增加到原来的1.5倍，以此类推。当可以预知数据大小，可以通过initialCapacity来默认设置动态数据的大小，减少扩...]]></description><category></category></item><item><title><![CDATA[JAVA 二叉树算法 (遍历、深度、汇总求和)]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367610</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367610</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 17:11:00 +0800</pubDate><description><![CDATA[二叉树构造类：


public class BinaryTree {

    int data; // 根节点数据
    BinaryTree left; // 左子树
    BinaryTree right; // 右子树

    public BinaryTree(int data) // 实例化二叉树类
    {
        this.data = data;
 ...]]></description><category></category></item><item><title><![CDATA[JAVA GC 原理详解]]></title><link>https://blog.youkuaiyun.com/QWER654786/article/details/102367611</link><guid>https://blog.youkuaiyun.com/QWER654786/article/details/102367611</guid><author>QWER654786</author><pubDate>Sun, 14 May 2017 16:10:00 +0800</pubDate><description><![CDATA[大多数情况下我们对GC的了解都只是浅层含义上的，下面我们来详细讲解下内部的一些实现原理。
讲解GC之前，我们得先了解下JVM的内存结构，才能让我们理解GC导致是干嘛的。

一.JVM 内存结构
JVM内存结构由6个部分组成，分别如下
1. 程序计数器(Program Conuter Register)
一块较小的内存空间，它是当前线程执行字节码的行号指示器，字节码解释工作器就是通过改变...]]></description><category></category></item></channel></rss>