<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_17200461的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_17200461</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_17200461]]></copyright><item><title><![CDATA[hadoop之yarn]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/125538864</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/125538864</guid><author>qq_17200461</author><pubDate>Thu, 30 Jun 2022 14:18:28 +0800</pubDate><description><![CDATA[yarn总结]]></description><category></category></item><item><title><![CDATA[iterm2快捷键]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/123686480</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/123686480</guid><author>qq_17200461</author><pubDate>Wed, 23 Mar 2022 15:00:33 +0800</pubDate><description><![CDATA[标签
新建标签：command + t
关闭标签：command + w
切换标签：command + 数字、 command + 左右方向键
查找：command + f
分屏
垂直分屏：command + d
水平分屏：command + shift + d
切换屏幕：command + option + 方向键、 command + [ 或 command + ]
切换全屏：command + enter
查询历史
查看历史命令（自动显示补全）：command + ;     iterm2自动列出之前]]></description><category></category></item><item><title><![CDATA[JSch SSH2 for Java]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122732961</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122732961</guid><author>qq_17200461</author><pubDate>Fri, 28 Jan 2022 16:14:01 +0800</pubDate><description><![CDATA[依赖

  com.jcraft
  jsch
  0.1.55

代码
package com.controller;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
import java.util.Properties;
import com.jcraft.jsch.ChannelExec;
impo]]></description><category></category></item><item><title><![CDATA[Ganymed SSH-2 for Java]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122731690</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122731690</guid><author>qq_17200461</author><pubDate>Fri, 28 Jan 2022 15:51:06 +0800</pubDate><description><![CDATA[引用
        &lt;dependency&gt;
            &lt;groupId&gt;ch.ethz.ganymed&lt;/groupId&gt;
            &lt;artifactId&gt;ganymed-ssh2&lt;/artifactId&gt;
            &lt;version&gt;build210&lt;/version&gt;
        &lt;/dependency&gt;

代码
package com.jd.orange]]></description><category></category></item><item><title><![CDATA[Lombok的基本使用]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122698905</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122698905</guid><author>qq_17200461</author><pubDate>Wed, 26 Jan 2022 11:57:45 +0800</pubDate><description><![CDATA[参考：https://www.jianshu.com/p/2543c71a8e45

]]></description><category></category></item><item><title><![CDATA[yaml使用总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122697221</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122697221</guid><author>qq_17200461</author><pubDate>Wed, 26 Jan 2022 10:43:12 +0800</pubDate><description><![CDATA[YAML 是专门用来写配置文件的语言，非常简洁和强大，远比 JSON 格式方便。
yaml基本语法
• key: value；kv之间有空格  k: v
• 大小写敏感
• 使用缩进表示层级关系
• 缩进不允许使用tab，只允许空格
• 缩进的空格数不重要，只要相同层级的元素左对齐即可
• '#'表示注释
• 字符串默认不使用引号表示。如果字符串之中包含空格或特殊字符，需要放在引号之中。
单引号和双引号都可以使用，双引号不会对特殊字符转义。
单引号之中如果还有单引号，必须连续使用两个单引号转义。
字符串可以]]></description><category></category></item><item><title><![CDATA[hadoop之MapReduce]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122623506</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122623506</guid><author>qq_17200461</author><pubDate>Fri, 21 Jan 2022 16:30:13 +0800</pubDate><description><![CDATA[MapReduce理论简介
1.1 MapReduce编程模型
　　MapReduce采用"分而治之"的思想，把对大规模数据集的操作，分发给一个主节点管理下的各个分节点共同完成，然后通过整合各个节点的中间结果，得到最终结果。简单地说，MapReduce就是"任务的分解与结果的汇总"。
在Hadoop中，用于执行MapReduce任务的机器角色有两个：一个是JobTracker；另一个是TaskTracker，JobTracker是用于调度工作的，TaskTracker是用于执行工作的。一个Hadoop集群中]]></description><category></category></item><item><title><![CDATA[集群测试工具]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122622945</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122622945</guid><author>qq_17200461</author><pubDate>Fri, 21 Jan 2022 15:55:19 +0800</pubDate><description><![CDATA[DFSIO测试集群I/O性能
DFSIO 用法
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.X-tests.jar TestDFSIO
15/05/22 19:50:22 INFO fs.TestDFSIO: TestDFSIO.1.8
Missing arguments.
Usage: TestDFSIO [genericOptions] -read [-random |]]></description><category></category></item><item><title><![CDATA[单元测试总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122301739</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122301739</guid><author>qq_17200461</author><pubDate>Tue, 04 Jan 2022 14:50:02 +0800</pubDate><description><![CDATA[定义
单元测试的对象是代码
单元测试即对代码中最小可测试的函数或者类进行验证，关注其内部逻辑，mock所有需要的服务
意义
保证“自己写的代码是自己想要的结果” 最有效的办法


单元测试对我们的产品质量是非常重要的。
单元测试是所有测试中最底层的一类测试，是第一个环节，也是最重要的一个环节，是唯一一次有保证能够代码覆盖率达到100%的测试，是整个软件测试过程的基础和前提
单元测试防止了开发的后期因bug过多而失控。据微软的统计，bug在单元测试阶段被发现，平均耗时3.25小时，如果漏到系统测试阶段，要花费]]></description><category></category></item><item><title><![CDATA[前端测试工具]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122231924</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122231924</guid><author>qq_17200461</author><pubDate>Thu, 30 Dec 2021 11:13:31 +0800</pubDate><description><![CDATA[前端测试工具
前端测试工具有很多，可以分为几类：
　　断言库
　　测试覆盖率工具
　　测试框架
断言库
测试的时候我们需要使用断言来判断代码是否到达目的，如果没有断言，我们的测试也将失去意义。
　　assert
　　assert 是 Node.JS 内置的断言库，下面是一个简单的例子：
const assert = require(‘assert’);
assert(1 === 2);
const test = ‘hello world’;
assert.strictEqual(‘hello world’,]]></description><category></category></item><item><title><![CDATA[混沌工程学习]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/122186787</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/122186787</guid><author>qq_17200461</author><pubDate>Tue, 28 Dec 2021 10:47:47 +0800</pubDate><description><![CDATA[流程
准备 →执行 → 检查 → 恢复
blade支持场景
blade使用说明：https://chaosblade-io.gitbook.io/chaosblade-help-zh-cn/

Linux 中模拟多种系统负载的方法：https://learnku.com/articles/22744

]]></description><category></category></item><item><title><![CDATA[ansible]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/121430988</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/121430988</guid><author>qq_17200461</author><pubDate>Fri, 19 Nov 2021 21:06:30 +0800</pubDate><description><![CDATA[安装方法
机器
172.21.137.5
172.21.137.6
172.21.137.7
172.21.137.8
在其中一个机器上安装即可，使用root账号安装的只能在root下使用命令
安装
sudo yum install ansible
测试配置正确性
ansible nodes -i /etc/hosts_90 -mshell -a’ps axu|grep java’ -e ansible_ssh_pass=5rRBBL
配置文件hosts_90
[nodes]
172.21.137.7
17]]></description><category></category></item><item><title><![CDATA[hadoop之HDFS]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/120934846</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/120934846</guid><author>qq_17200461</author><pubDate>Sun, 07 Nov 2021 13:05:36 +0800</pubDate><description><![CDATA[Hadoop之HDFS简介功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
简介
功能快捷键
撤销：Ctrl/Command + Z
重做：Ctrl/Command + Y
加粗：Ctrl/Command + B
斜体：Ctrl/C]]></description><category></category></item><item><title><![CDATA[springboot2-面试题]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/119534872</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/119534872</guid><author>qq_17200461</author><pubDate>Mon, 09 Aug 2021 13:39:44 +0800</pubDate><description><![CDATA[springboot的执行过程
@SpringBootApplication注解说明此类是Springboot程序的启动类，是程序的入口
@SpringBootApplication 等价于@Configuration+@EnableAutoConfiguration+@ComponentScan
@Configuration  表明是配置类
@EnableAutoConfiguration：表示程序启动时自动加载springboot默认配置。
@ComponentScan：表示启动时自动扫描当前包及子包下]]></description><category></category></item><item><title><![CDATA[算法面试总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/119520764</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/119520764</guid><author>qq_17200461</author><pubDate>Sun, 08 Aug 2021 21:37:49 +0800</pubDate><description><![CDATA[假设有4个硬币，其中有一个硬币的重量异常，尝试用一个没有砝码的天平找出异常的硬币，天平只能使用3次，只需要描述思路。
解法：四个硬币1，2，3，4 分两组 1，2 -  3，4
第一步：1，2 &lt;  3，4
第二步：1 &lt; 2 说明最小的是1，结束
1=2继续
第三步：3&gt;4 说明最大的是3，结束
字符串倒转
说明“前后空格去掉”、 “中间有空格的只保留一个”
    public static void main(String[] arg){
        String a = "  ]]></description><category></category></item><item><title><![CDATA[java设计模式-总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/119516414</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/119516414</guid><author>qq_17200461</author><pubDate>Sun, 08 Aug 2021 19:34:00 +0800</pubDate><description><![CDATA[Java设计模式分为三大类
创建型模式：对象实例化的模式，创建型模式用于解耦对象的实例化过程。
结构型模式：把类或对象结合在一起形成一个更大的结构。
行为型模式：类和对象如何交互，及划分责任和算法。

工厂模式
工厂顾名思义就是创建产品，根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式，根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。
简单工厂模式
// Phone类：手机标准规范类(AbstractProduct)
public interface Phone {
    void ma]]></description><category></category></item><item><title><![CDATA[java面试总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/119424283</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/119424283</guid><author>qq_17200461</author><pubDate>Thu, 05 Aug 2021 22:57:41 +0800</pubDate><description><![CDATA[类加载过程
1.加载
通过类的全限定名查找到该类的字节码文件，将该字节码文件装载到jvm中，jvm将文件中静态字节码结构转换成
运行时动态数据结构，并在方法区生成一个定义该类的Class对象，作为方法区中该类的各种数据访问的入口。
2.验证
确保该类的字节码文件中所包含的信息是否符合当前虚拟机的要求，不包含有危害虚拟机的信息（主要有四种验证，
文件格式验证，元数据验证排（语义）、字节码验证（防止危害虚拟机），符号引用验证）
3.准备
为类变量分配内存，并设置一个初始值。被final修饰的类变量，该类型会在编]]></description><category></category></item><item><title><![CDATA[Jackson-学习总结]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/118972713</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/118972713</guid><author>qq_17200461</author><pubDate>Wed, 21 Jul 2021 19:48:54 +0800</pubDate><description><![CDATA[fastjson Jackson gson  都可以进行序列化和反序列化
但是：
fastjson太过于侧重性能，对于部分高级特性支持不够，而且部分自定义特性完全偏离了json和js规范导致和其他框架不兼容；
fastjson文档缺失较多，部分Feature甚至没有文档，而且代码缺少注释较为晦涩；
fastjson的CVE bug监测较弱，很多CVE数据库网站上有关fastjson的CVE寥寥无几，例如近期的AutoType导致的高危漏洞，虽然和Jackson的PolymorphicDeserializat]]></description><category></category></item><item><title><![CDATA[Flink学习-小记]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/118071226</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/118071226</guid><author>qq_17200461</author><pubDate>Sun, 20 Jun 2021 16:18:56 +0800</pubDate><description><![CDATA[Flink是一个框架和分布式处理引擎，用于对无界和有界数据流进行状态计算
特点：



]]></description><category></category></item><item><title><![CDATA[@Transactional使用try-＞catch捕获异常并回滚方法]]></title><link>https://blog.youkuaiyun.com/qq_17200461/article/details/117332490</link><guid>https://blog.youkuaiyun.com/qq_17200461/article/details/117332490</guid><author>qq_17200461</author><pubDate>Thu, 27 May 2021 16:47:28 +0800</pubDate><description><![CDATA[@Transactional使用try-&gt;catch捕获异常并回滚方法
需求:需要捕获到@Transactional中的异常,并不影响事物回滚
@Transactional(rollbackFor = Exception.class)
public void test() {
try {
updata();
updata2();
} catch (Exception e) {
e.printStackTrace();
TransactionAspectSupport.currentTransactio]]></description><category></category></item></channel></rss>