<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wangmate的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wangmate</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wangmate]]></copyright><item><title><![CDATA[kafka 消费--转换--生产模式]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/112914206</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/112914206</guid><author>wangmate</author><pubDate>Thu, 21 Jan 2021 00:12:09 +0800</pubDate><description><![CDATA[kafka 消费–转换–生产模式
package com.oldwang.transactional;

import org.apache.kafka.clients.consumer.*;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.apache.kafka.clients.producer.Produ]]></description><category></category></item><item><title><![CDATA[kafka事物发送消息]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/112914190</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/112914190</guid><author>wangmate</author><pubDate>Thu, 21 Jan 2021 00:11:24 +0800</pubDate><description><![CDATA[kafka事物发送消息
package com.oldwang.transactional;

import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.kafka.common.seriali]]></description><category></category></item><item><title><![CDATA[api操作Kafka-config]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/112094735</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/112094735</guid><author>wangmate</author><pubDate>Sat, 02 Jan 2021 12:11:11 +0800</pubDate><description><![CDATA[package com.oldwang.kafka_admin_client;

import org.apache.kafka.clients.admin.*;
import org.apache.kafka.clients.consumer.ConsumerRecords;
import org.apache.kafka.common.config.ConfigResource;

import java.util.*;
import java.util.concurrent.ExecutionExce]]></description><category></category></item><item><title><![CDATA[api操作Kafka-topic]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/112058626</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/112058626</guid><author>wangmate</author><pubDate>Fri, 01 Jan 2021 10:25:35 +0800</pubDate><description><![CDATA[添加maven依赖
       &lt;dependency&gt;
            &lt;groupId&gt;org.apache.kafka&lt;/groupId&gt;
            &lt;artifactId&gt;kafka_2.11&lt;/artifactId&gt;
            &lt;version&gt;2.1.1&lt;/version&gt;
        &lt;/dependency&gt;

package com.oldwang.ka]]></description><category></category></item><item><title><![CDATA[kafka自定义序列化与反序列化]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/111087371</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/111087371</guid><author>wangmate</author><pubDate>Sun, 13 Dec 2020 00:21:55 +0800</pubDate><description><![CDATA[kafka自定义序列化与反序列化序列化对象序列化实现类producer生产者反序列化实现类consumer消费者效果图
github 地址
序列化对象
package com.oldwang.custom_serializer;

import java.io.Serializable;

/**
 * @author oldwang
 */
public class User implements Serializable {

    private int id;
    private String]]></description><category></category></item><item><title><![CDATA[SpringBoot项目打包可运行]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/108474321</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/108474321</guid><author>wangmate</author><pubDate>Tue, 08 Sep 2020 18:26:04 +0800</pubDate><description><![CDATA[在SpringBoot项目中我们打包直接运行jar文件，有时候会出现xxx.jar 运行报错：找不到主清单属性,出现此问题是因为在打包的时候没有把主类打进去，需要我们通过插件指定主类入口 在插件中添加SpringBoot的打包插件
&lt;plugin&gt;
                &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
                &lt;artifactId&gt;spring-boot-maven-p]]></description><category></category></item><item><title><![CDATA[非SprongBoot项目可运行打包方式]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/108474085</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/108474085</guid><author>wangmate</author><pubDate>Tue, 08 Sep 2020 18:15:04 +0800</pubDate><description><![CDATA[在SpringBoot项目中我们都是通过SpringBoot的打包插件进行打包，然后使用java -jar命令运行jar包，如果我们的项目是非SpringBoot项目的打包的时候需要添加另外的打包插件 在标签中加入以下插件
&lt;plugin&gt;
              &lt;artifactId&gt;maven-assembly-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.2&lt;/version&gt;
       ]]></description><category></category></item><item><title><![CDATA[@EnableEurekaClient和@EnableDiscoveryClient有什么区别？]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106823658</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106823658</guid><author>wangmate</author><pubDate>Thu, 18 Jun 2020 09:35:26 +0800</pubDate><description><![CDATA[在stackoverflow上看到这样的解释发现服务”有多种实现方式（eureka，consul，zookeeper）。 @EnableDiscoveryClient属于在spring-cloud-commons中，并在类路径中选择实现。 @EnableEurekaClient属于在spring-cloud-netflix中，仅适用于eureka。如果eureka在类路径上，则它们实际上是相同的。
通过这句话我们可以理解如果注册中心使用eureka 推荐使用@EnableEurekaClient，其他的注册]]></description><category></category></item><item><title><![CDATA[SpringBoot快速自定义Starter]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106780133</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106780133</guid><author>wangmate</author><pubDate>Tue, 16 Jun 2020 09:03:36 +0800</pubDate><description><![CDATA[在SpringBoot的过程中，不管是集成redis还是RabbitMQ，甚至是前面集成mybatis已经了很多starter，这些starter都是springboot为我们提供的一些封装，这些starter能非常方便快捷的增加功能，并不需要很多配置，即使需要配置也就在application.properties稍微配置下就可以了。
相信不少小伙伴肯定使用过redis-starter，我们接下来也自己集成一个redis-starter
新建一个项目，这个项目不需要web功能
&lt;?xml versio]]></description><category></category></item><item><title><![CDATA[快速了解SpringBoot启动流程分析]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106779877</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106779877</guid><author>wangmate</author><pubDate>Tue, 16 Jun 2020 08:45:43 +0800</pubDate><description><![CDATA[昨天无意之间看到了一家公司对于springboot的面试题，自己回来之后也就翻了翻源码，做了一个小整理。
在翻源码之前我们先要了解几个类
ApplicationContextInitializer   Context初始化后调用的类
SpringApplicationRunListener  SpringBoot运行监听的类
ApplicationRunner
CommandLineRunner
上面这两个几乎可以等价，用于启动后做客户自定义的操作
首先我们先来定义几个类方便我们分析
新建java类Cust]]></description><category></category></item><item><title><![CDATA[maven依赖其他war工程]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106685329</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106685329</guid><author>wangmate</author><pubDate>Thu, 11 Jun 2020 11:49:19 +0800</pubDate><description><![CDATA[maven 项目如何依赖起来其他的 war 工程
假设现有A，B 两个项目，且两个项目都是war项目
A项目要依赖B项目 我们该如何实现，首先 在B项目的pom.xml中添加插件
	&lt;build&gt;
		&lt;plugins&gt;
			&lt;plugin&gt;
				&lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
				&lt;artifactId&gt;maven-war-plugin&lt;/artifactId&g]]></description><category></category></item><item><title><![CDATA[设计模式之单例模式]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106211993</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106211993</guid><author>wangmate</author><pubDate>Tue, 19 May 2020 12:28:04 +0800</pubDate><description><![CDATA[单例模式之饿汉式
/**
 * @Auther: oldmatewang
 * @Description:  单例模式之饿汉式---&gt;该类在被加载时就会实例化一个对象
 */
public class Hungry {
    //构造器私有化
    private Hungry(){}
    //创建所有对象
    private static Hungry HUNGRY  = new Hungry();
    //提供对外接口
    public static Hungry getIns]]></description><category></category></item><item><title><![CDATA[thymeleaf表单提交POST请求CSRF跨域403解决方案]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/106198947</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/106198947</guid><author>wangmate</author><pubDate>Mon, 18 May 2020 18:38:40 +0800</pubDate><description><![CDATA[第一种方法，官方推荐使用。form 表单使用 th:action属性，thymeleaf会自动在 form 表单中生成 _csrf 隐藏域

&lt;!DOCTYPE html&gt;
&lt;html lang="en" xmlns:th="http://www.thymeleaf.org"&gt;
&lt;head&gt;
...
  &lt;form class="form-signin" th:action="@{login}" action="login" method="post...]]></description><category></category></item><item><title><![CDATA[linux下ping百度提示: unknown host www.baidu.com]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/104673102</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/104673102</guid><author>wangmate</author><pubDate>Thu, 05 Mar 2020 13:29:31 +0800</pubDate><description><![CDATA[问题现象：ping www.baidu.com，提示unknown host www.baidu.com

问题原因：没有配置域名服务器resolve.conf

问题解决：

1、创建resolv.conf文件

sudo vi /etc/resolv.conf

2、在/etc/resolv.conf中添加 DNS (默认Google的DNS)

 nameserver8.8.8.8

...]]></description><category></category></item><item><title><![CDATA[修改root用户文件权限为普通用户]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/104297339</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/104297339</guid><author>wangmate</author><pubDate>Thu, 13 Feb 2020 15:59:22 +0800</pubDate><description><![CDATA[命令：chown -R 用户名 文件夹路径

sudo chown -R hadoop:hadoop /tmp/hadoop


]]></description><category></category></item><item><title><![CDATA[Linux安装SVN]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/103539867</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/103539867</guid><author>wangmate</author><pubDate>Sat, 14 Dec 2019 15:34:35 +0800</pubDate><description><![CDATA[一、卸载
yum remove subversion
二、安装
1.安装httpd，mod_dav_svn，subversion
yum install -y httpd mod_dav_svn subversion
2.创建仓库
mkdir /var/www/svn
cd /var/www/svn
svnadmin create repo
chown -R apache:apache repo
...]]></description><category></category></item><item><title><![CDATA[Linux系统搭建SVN仓库]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/102785301</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/102785301</guid><author>wangmate</author><pubDate>Mon, 28 Oct 2019 17:36:49 +0800</pubDate><description><![CDATA[一、卸载
yum remove subversion
二、安装
2.1云命令安装svn服务器
yum install subversion
2.1查看安装svn服务的版本
svnserve --version
2.3创建版本库
cd /var/svn //先进入svn目录
svnadmin create...]]></description><category></category></item><item><title><![CDATA[HDFS两大核心之文件上传&下载]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/101440956</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/101440956</guid><author>wangmate</author><pubDate>Thu, 26 Sep 2019 14:26:20 +0800</pubDate><description><![CDATA[文件上传过程
1.客户端向namenode发送文件上传请求
2.NameNode会进行一系列的检查 检查父目录，文件是否存在 权限等 如果检查都通过会
3.客户端正真的提交上传文件的请求 这个请求包含一个重要的信息文件的大小（计算切块的个数）
4.NameNode开始计算上传文件的切块个数 （文件总长度/128M=结果向上取整，计算完成之后返回给客户端对应的节点
 获取副本个数，返回客户端对...]]></description><category></category></item><item><title><![CDATA[HDFS四大机制之安全模式]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/101429753</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/101429753</guid><author>wangmate</author><pubDate>Thu, 26 Sep 2019 11:30:27 +0800</pubDate><description><![CDATA[集群的一种自我保护模式 namenode
集群再安全模式下不允许用户的相关的操作的
什么情况下 hdfs会进入安全模式？
 1）集群启动的时候进入安全模式
 集群的启动顺序：
  namenode---》 datanode---》 secondarynamenode
  集群再启动namenode和datanode的时候一直处于安全模式的
 集群启动的时...]]></description><category></category></item><item><title><![CDATA[HDFS四大机制之负载均衡]]></title><link>https://blog.youkuaiyun.com/wangmate/article/details/101426168</link><guid>https://blog.youkuaiyun.com/wangmate/article/details/101426168</guid><author>wangmate</author><pubDate>Thu, 26 Sep 2019 10:39:21 +0800</pubDate><description><![CDATA[hadoop集群中多个datanode中每一个datanode存储的数据的占比相当，负载均衡和每一个datanode的硬件相关的

对于hadoop集群来说 namenode会定期检查集群的负载 如果发现集群中datanode节点的负载不均衡的情况下 自动启动负载均衡
进行负载均衡---》 将存储占比大的datanode节点上的数据 移动到 存储占比小的datanode节点上
将node1...]]></description><category></category></item></channel></rss>