<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[antiling9663的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/antiling9663</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; antiling9663]]></copyright><item><title><![CDATA[SpringCache整合Redis]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300861</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300861</guid><author>antiling9663</author><pubDate>Wed, 28 Aug 2019 10:47:00 +0800</pubDate><description><![CDATA[　　之前一篇文章 SpringBoot整合Redis 已经介绍了在SpringBoot中使用redisTemplate手动
操作redis数据库的方法了。其实这个时候我们就已经可以拿redis来做项目了，需要缓存服务的地方
就引入redisTemplate就行啦。
　　但是这里有个问题，缓存归根结底不是业务的核心，只是作为功能和效率上的辅助，如果我现在在某个
项目中用到缓存的地方...]]></description><category></category></item><item><title><![CDATA[Redis慢日志]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300856</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300856</guid><author>antiling9663</author><pubDate>Tue, 27 Aug 2019 21:56:00 +0800</pubDate><description><![CDATA[　　和Mysql一样，Redis也有慢日志，用于记录超过给定时间的命令。可以在redis.conf文件中看到
相应的配置：

　　有两个配置，slowlog-log-slower-than和slowlog-max-len，我这里是改过的，默认值不是这个0和5。
　　slowlog-log-slower-than设置超过这个时间（微妙）的命令就会被添加到慢日志当中。
　　slow...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Redis]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300859</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300859</guid><author>antiling9663</author><pubDate>Wed, 21 Aug 2019 16:16:00 +0800</pubDate><description><![CDATA[　　最近在学习redis，把redis单机数据库的基础知识看的差不多了，准备用SpringBoot整合实践一下。
　　最开始去看spring官网关于spring-data-redis的文档（英文不太好，结合有道看了几个重点的地方，但是上面也没有具体说到
这个代码该怎么写）。
　　Spring Data Redis
　　然后百度了几篇博文，都看了一遍，大致理清网上作者们的思路。关于...]]></description><category></category></item><item><title><![CDATA[Redis使用RDB持久化和AOF持久化的区别 - 小白之所见]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300853</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300853</guid><author>antiling9663</author><pubDate>Mon, 19 Aug 2019 22:24:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/alinainai/p/11380168.html]]></description><category></category></item><item><title><![CDATA[小白安装使用Redis]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300857</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300857</guid><author>antiling9663</author><pubDate>Sat, 17 Aug 2019 18:38:00 +0800</pubDate><description><![CDATA[　　Redis属于NoSql中的键值数据库，非常适合海量数据读写。
　　之前用过mongo但是没有用过redis，今天来学习安装redis。
　　先去官网下载redis安装包
　　redis官网
　　redis是c语言编写的，需要make编译一下，安装很简单，可以参考安装包里面的README说明文件
　　
　　vi README.md
　　
　　把里面最重要的几步提...]]></description><category></category></item><item><title><![CDATA[Mysql的Sql语句优化]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300851</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300851</guid><author>antiling9663</author><pubDate>Sat, 03 Aug 2019 23:01:00 +0800</pubDate><description><![CDATA[　　在Mysql中执行Sql语句经常会遇到有的语句执行时间特别长的情况，出现了这种情况我们就需要静下心分析分析。
　　首先，我们需要确定系统中哪些语句执行时间比较长。这个可以使用Mysql的慢日志来跟踪。下面给出一段SQL示例：

　　首先准备一个数据库，这里有现成的数据：
　　https://github.com/grezbo/cn_zipcode
　　数据准备好了，我们先...]]></description><category></category></item><item><title><![CDATA[小白使用分布式追踪系统]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300854</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300854</guid><author>antiling9663</author><pubDate>Tue, 16 Jul 2019 23:25:00 +0800</pubDate><description><![CDATA[在一个微服务体系中，对于应用之间的通信、接口调用如何做到跟踪和监控，一直是一个比较难的问题。
比如A是做商品服务开发的，而B是做订单服务开发的，B在下单的时候需要调用到商品服务的查询商品库存接
口和查询商品明细接口，才能够完成下单流程。现在出现的问题就是下单很慢，要耗时20s。多么恐怖的耗时，
我一个用户，真金白银买你的东西，你却半天不让我下单成功，不想卖直说好吧。
　　看到没有...]]></description><category></category></item><item><title><![CDATA[小白使用Hystrix]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300850</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300850</guid><author>antiling9663</author><pubDate>Mon, 15 Jul 2019 23:01:00 +0800</pubDate><description><![CDATA[Hystrix是什么东西？百度一下：

　　没错，hystrix是豪猪的意思，作为SpringCloud微服务系统中保持服务稳定的重要组件，正如它的名字一样，它对整个系统起到了保护的作用。
　　在许多文章当中把hystrix描述为熔断器，便于我们结合生活来理解。想象一下，你在家使用了很多的大功率的电器，导致电路的压力很大，当达到
一个临界值的时候，就会跳闸。而在一个庞大的微服务系...]]></description><category></category></item><item><title><![CDATA[Java泛型的协变与逆变]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300852</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300852</guid><author>antiling9663</author><pubDate>Tue, 09 Jul 2019 16:36:00 +0800</pubDate><description><![CDATA[　　泛型擦除
　　Java的泛型本质上不是真正的泛型，而是利用了类型擦除（type erasure），比如下面的代码就会出现错误：
　　
　　报的错误是：both methods have same erasure
　　原因是java在编译的时候会把泛型，上面的&lt;String&gt;和&lt;Integer&gt;都给擦除掉（其实并没有真正的被擦除，javap -l -p...]]></description><category></category></item><item><title><![CDATA[try-finally的时候try里面带return]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300849</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300849</guid><author>antiling9663</author><pubDate>Thu, 04 Jul 2019 17:05:00 +0800</pubDate><description><![CDATA[　最近学习的JVM小册中老师提了个问题：

　　最开始我觉得是1，结果程序跑出来是0，感到很疑惑，于是查看了下字节码：
　　
　　从字节码可以看出：
　　0：定义变量0
　　1：将0存入本地变量表slot-0
　　2：加载slot-0到操作数栈
　　3：将栈顶元素存入本地变量表slot-1
　　4：对slot-0自增
　　7-8：加载slot-1到操作数栈并返回
　...]]></description><category></category></item><item><title><![CDATA[URLEncoder.encode编码空格变+号]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300848</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300848</guid><author>antiling9663</author><pubDate>Tue, 02 Jul 2019 20:12:00 +0800</pubDate><description><![CDATA[今天调用rest接口的时候，使用URLEncoder编码将空格转为了+号，而rest接口方需要将空格转为%20，参照标准

　　
　　之后用了不少在线的工具测试，有的将空格转为了+号，有的则是转为了%20。看了一篇博文恍然大悟：
　　https://www.jianshu.com/p/4a7eb969235d
　　因为我要转的字符在URL的参数部分，会被转为+号，而原本的+号则...]]></description><category></category></item><item><title><![CDATA[匿名内部类和Lambda表达式是一样的吗？]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300811</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300811</guid><author>antiling9663</author><pubDate>Mon, 01 Jul 2019 09:57:00 +0800</pubDate><description><![CDATA[　　先看一下匿名内部类长什么样子：

 1 package com.jvm.demo.test2;
 2 
 3 public class InnerClassTest {
 4 
 5     public static void main(String[] args) {
 6         new Thread(new Runnable() {
 7       ...]]></description><category></category></item><item><title><![CDATA[Spring Cloud Config配置git私钥出错]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300846</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300846</guid><author>antiling9663</author><pubDate>Thu, 27 Jun 2019 22:40:00 +0800</pubDate><description><![CDATA[重装了电脑之后，重新生成了ssh key文件id_rsa和id_rsa.pub文件。
然后在配置中心的配置了私钥之后启动项目，报错如下：

Reason: Property 'spring.cloud.config.server.git.privateKey' is not a valid

　　仔细查看后发现我的私钥是以BEGIN OPENSSH PRIVATE KEY开头，...]]></description><category></category></item><item><title><![CDATA[Git本地已有项目关联远程仓库]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300847</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300847</guid><author>antiling9663</author><pubDate>Tue, 25 Jun 2019 08:00:00 +0800</pubDate><description><![CDATA[情况：

本地已有项目
远程有个仓库

目的：
　　本地项目关联远程仓库

首先要把本地项目变成git管理的，也就是建立一个本地仓库，可以在项目目录下面使用git init命令初始化仓库，初始化成功之后会在仓库里面看到
一个.git文件

.git文件里面记录仓库的历史信息，版本分支等等。

然后我们在gitee上新建一个仓库tools去关联它，这里需要把本...]]></description><category></category></item><item><title><![CDATA[第一次使用HSDB]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300844</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300844</guid><author>antiling9663</author><pubDate>Sat, 22 Jun 2019 23:29:00 +0800</pubDate><description><![CDATA[今天看了几篇大佬关于HSDB使用的文章，自己也依样画葫芦的用来一下，强大的一匹！！！
HSDB（Hotspot Debugger），JDK自带的工具，用于查看JVM运行时的状态。
HSDB位于C:\Program Files\Java\jdk1.8.0_212\lib里面，接下来启动HSDB：

1 java -cp .\sa-jdi.jar sun.jvm.hotspot.HS...]]></description><category></category></item><item><title><![CDATA[Springboot应用使用Docker部署]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300845</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300845</guid><author>antiling9663</author><pubDate>Mon, 03 Jun 2019 23:08:00 +0800</pubDate><description><![CDATA[首先准备好springboot应用，然后打包，我这里已经准备好了一个jar包

然后上传到服务器，准备一个目录用于存放jar包和Dokerfile文件

　　编写Dokerfile文件
　　
　　我这里写的很简单，就简单解释一下：
　　FROM：因为跑java程序，所以要依赖到JDK
　　ADD：将本地目录的jar包复制到容器里面
　　ENTRYPOINT：启动容器之后...]]></description><category></category></item><item><title><![CDATA[Window10家庭版启动hyper-v虚拟机组件]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300817</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300817</guid><author>antiling9663</author><pubDate>Mon, 25 Mar 2019 10:56:00 +0800</pubDate><description><![CDATA[在安装docker的时候发现如果直接使用docker for windows，对系统的要求是window10专业版或企业版，家庭版本身没有hyper-v，不能支持
虚拟化。但是后来我在搜索过程中发现，windows家庭版是可以启动hyper-v的。
首先看看系统是否支持虚拟化：

　　看这里的 虚拟化：启用
　　然后看看Windows功能里面有没有hyper-v选项：
　　...]]></description><category></category></item><item><title><![CDATA[Mysql行转列的简单应用]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300816</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300816</guid><author>antiling9663</author><pubDate>Sun, 24 Mar 2019 21:52:00 +0800</pubDate><description><![CDATA[　　最近在复习过程中愈发觉得，有些东西久了不用，真的会忘~——~。

　　
　　将上面的表格转换为下面的表格
　　
　　我拼sql拼了好久还是没弄出来，还是偶然看到我以前的笔记，才想起有行转列这样的操作（太久没有写过复杂点的sql了）

1 SELECT YEAR
2     ,
3     max( CASE MONTH WHEN '1' THEN amount ...]]></description><category></category></item><item><title><![CDATA[Java子类初始化调用父类无参构造]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300812</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300812</guid><author>antiling9663</author><pubDate>Sun, 24 Mar 2019 21:23:00 +0800</pubDate><description><![CDATA[实在是服了自己，子类初始化调用父类无参构造这种初学者都应该知道的事，我给忘了。
记得当初看书的时候各种概念抄在笔记本上，再上机实践，以为一辈子都不会忘，还是给忘了。
这件事说明了两个问题：
1.我没有保持专注。
2.不管记性好坏都必须要复习。


我们知道在Java中，子类初始化的时候（不管是通过有参构造还是无参构造），如果继承有父类，都会先去调用父类
的无参构造。...]]></description><category></category></item><item><title><![CDATA[Kafka发送到分区的message是否是负载均衡的？]]></title><link>https://blog.youkuaiyun.com/antiling9663/article/details/102300813</link><guid>https://blog.youkuaiyun.com/antiling9663/article/details/102300813</guid><author>antiling9663</author><pubDate>Fri, 22 Mar 2019 10:27:00 +0800</pubDate><description><![CDATA[首先说结论，是负载均衡的。也就是说，现在有一个producer，向一个主题下面的三个分区发送message，没有指定具体要发送给哪个partition，
这种情况，如果是负载均衡的，发送的消息应该均匀分布在三个分区的日志文件中。

下面开始验证：
首先创建一个带三个分区的topic， my-partitioned-topic。

bin\windows\kafka-topi...]]></description><category></category></item></channel></rss>