<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Machine4869的博客]]></title><description><![CDATA[java]]></description><link>https://blog.youkuaiyun.com/Machine4869</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Machine4869]]></copyright><item><title><![CDATA[seatunnel(海量数据处理工具)实现HDFS导入Clickhouse]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/122456556</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/122456556</guid><author>Machine4869</author><pubDate>Wed, 12 Jan 2022 16:27:37 +0800</pubDate><description><![CDATA[文章目录介绍快速开始案例1：HDFS导入Clickhouse

ref: https://interestinglab.github.io/seatunnel-docs/#/zh-cn/v1/

介绍
seatunnel 是一个非常易用，高性能、支持实时流式和离线批处理的海量数据处理产品，架构于Apache Spark 和 Apache Flink之上。
为什么需要seatunnel ？

让Spark的使用更简单，更高效。简化开发

特性

简单易用，灵活配置，无需开发
模块化和插件化，易于扩展
支持利用]]></description><category></category></item><item><title><![CDATA[ClickHouse数据字典（很详细）]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/121381370</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/121381370</guid><author>Machine4869</author><pubDate>Wed, 17 Nov 2021 16:24:58 +0800</pubDate><description><![CDATA[数据字典

参考：《ClickHouse原理解析与应用实践》第5章、第8章8.4.2节

数据字典是clickhouse提供的一种简单 实用的存储媒介，以键值和属性映射的形式定义数据。字典中的数据会主动或被动加载到内存之中，并支持动态更新。由于字典数据常驻内存特特性，比较适合保存常量或者经常使用的维度表数据，以避免不必要的JOIN数据。
数据字典分为内置和扩展两种形式，内置数据字典是以clickhouse默认自带的字典；外部字典是通过用户自定义配置实现的字典。
在正常情况下，字典中的数据只能通过字典函数访问]]></description><category></category></item><item><title><![CDATA[Linux系列之Shell脚本]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/118961482</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/118961482</guid><author>Machine4869</author><pubDate>Wed, 21 Jul 2021 10:52:48 +0800</pubDate><description><![CDATA[文章目录helloword入门多命令处理shell变量if 判断case 语句for 循环while 循环read 读取控制台输入函数shell工具

概述：shell常用代码总结

helloword入门
#!/bin/bash  
# 指定解析器

echo "helloworld"
echo $A

多命令处理
#!/bin/bash

# 多个命令
cd /home/machine/file
touch "f01d02.txt"
echo "hello BD" &gt;&gt; f01d02.txt]]></description><category></category></item><item><title><![CDATA[Java设计模式系列（二）：外观模式&装饰器模式]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/108726584</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/108726584</guid><author>Machine4869</author><pubDate>Tue, 22 Sep 2020 10:56:40 +0800</pubDate><description><![CDATA[外观模式（Facade）-6
也叫门面模式，过程模式。
外观模式为子系统中的一组接口提供一致的界面，此模式定义一个高层接口，使得子系统更容易使用。
需求分析
一个家庭影院使用过程：
放下屏幕
开爆米花
开DVD
...
播放DVD
暂停DVD
...
收起屏幕
收起爆米花
关DVD	

使用外观模式，提供高层接口，简化家庭影院操作。
类图关系：
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OzucVPEo-1600743292620)(20190906210551001/i]]></description><category></category></item><item><title><![CDATA[Java面试之Cookie和Session的区别]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/108085231</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/108085231</guid><author>Machine4869</author><pubDate>Tue, 18 Aug 2020 19:13:10 +0800</pubDate><description><![CDATA[精简回答
1、存储位置：cookie数据存放在客户的浏览器上，session数据放在服务器上。
2、安全性：cookie不够安全，可以分析本地cookie进行cookie欺骗，考虑到安全应使用session。
3、性能：session会一定时间存服务器上。当访问增多，会占用服务器性能，考虑到减轻性能角度，应使用session
4、可以考虑将登陆信息等重要信息存放为session，其他信息如果需要保留，可以放在cookie中。
Cookie的工作原理
（1）浏览器端第一次发送请求到服务器端
（2）服务器端创建]]></description><category></category></item><item><title><![CDATA[Java面试之静态方法能否被重写]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/108063331</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/108063331</guid><author>Machine4869</author><pubDate>Mon, 17 Aug 2020 20:13:46 +0800</pubDate><description><![CDATA[演示
package com.mxx.demospring.demo;

public class Son extends Father{

    @Override
    public void m02() {
        System.out.println("son m02");
    }

    public static void m01() {
        System.out.println("son m01");
    }


    public static void ]]></description><category></category></item><item><title><![CDATA[Java面试之HashMap的红黑树]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/107923816</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/107923816</guid><author>Machine4869</author><pubDate>Mon, 10 Aug 2020 22:33:25 +0800</pubDate><description><![CDATA[红黑树五大性质
1、每个结点或是红色的，或是黑色的
2、根节点是黑色的
3、每个叶结点（NIL）是黑色的
4、如果一个节点是红色的，则它的两个儿子都是黑色的。
5、对于每个结点，从该结点到其叶子结点构成的所有路径上的黑结点个数相同。
在jdk1.8中，hashmap的底层结构，由原来单纯的的数组+链表，更改为链表长度为8时，开始由链表转换为红黑树
1、为什么是红黑树不是二叉平衡树AVL
1、AVL绝对严格平衡，树高差最大为1；红黑树非严格平衡，允许局部不平衡存在
2、因此在查找上，AVL效率比红黑树高一点点]]></description><category></category></item><item><title><![CDATA[Java面试之ThreadLocal及其内存泄露]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/107797935</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/107797935</guid><author>Machine4869</author><pubDate>Tue, 04 Aug 2020 20:23:11 +0800</pubDate><description><![CDATA[什么是ThreadLocal
ThreadLocal提供了线程的局部变量，每个线程都可以通过set()和get()来对这个局部变量进行操作，但不会和其他线程的局部变量进行冲突，实现了线程的数据隔离
ThreadLocal的简单使用
package com.mxx;

import java.util.concurrent.TimeUnit;

public class ThreadLocalTest {

    public static void main(String[] args) {
      ]]></description><category></category></item><item><title><![CDATA[Java设计模式系列（一）：单例模式&原型模式]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/106559686</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/106559686</guid><author>Machine4869</author><pubDate>Thu, 04 Jun 2020 22:27:43 +0800</pubDate><description><![CDATA[文章目录单例模式（Singleton）-4懒汉-线程不安全懒汉-线程安全-double check+volatile懒汉-线程安全-静态内部类饿汉-线程安全原型模式（Prototype ）-5使用案例浅克隆引发的问题深克隆
单例模式（Singleton）-4
懒汉-线程不安全
public class LazySingleton {
    private static LazySingleton lazySingleton = null;

    private LazySingleton() {
  ]]></description><category></category></item><item><title><![CDATA[SpringAOP之底层原理]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/106270310</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/106270310</guid><author>Machine4869</author><pubDate>Thu, 21 May 2020 23:43:53 +0800</pubDate><description><![CDATA[Spring的AOP

参考：https://www.jianshu.com/p/8ccdbe00ff06
我的个人博客：https://machine4869.gitee.io/

AOP概述

aop：面向切面（方面）编程，扩展功能不修改源代码实现
AOP采取横向抽取机制，取代了传统纵向继承体系重复性代码
aop底层使用动态代理实现

AOP演变过程图解

AOP相关术语
- Joinpoint(连接点): 类里面可以被增强的方法，这些方法称为连接点
 
- Pointcut(切入点): 所谓切入点是指]]></description><category></category></item><item><title><![CDATA[java面试之JVM和GC]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/106269823</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/106269823</guid><author>Machine4869</author><pubDate>Thu, 21 May 2020 23:10:28 +0800</pubDate><description><![CDATA[参考：

www.atguigu.com
https://www.bilibili.com/video/av70166821?p=13
https://www.bilibili.com/video/av48961087
转载自我的个人博客：https://machine4869.gitee.io/


JVM体系结构
JVM类型
HotSpot
&gt; java -version
java version "1.8.0_231"
Java(TM) SE Runtime Environment (buil.]]></description><category></category></item><item><title><![CDATA[Java面试之JUC]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/105020059</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/105020059</guid><author>Machine4869</author><pubDate>Sat, 21 Mar 2020 23:24:20 +0800</pubDate><description><![CDATA[引言：juc，java并发编程工具包，高频面试考点。
参考：https://www.bilibili.com/video/av48961087
代码：https://gitee.com/machine4869/note-code/tree/master/note_juc

文章目录Juc框架概览Volatilevolatile是什么？为什么引入了volatileJMM抽象结构图描述JMM如何保证...]]></description><category></category></item><item><title><![CDATA[Electron-跨平台桌面开发]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/104333347</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/104333347</guid><author>Machine4869</author><pubDate>Sat, 15 Feb 2020 19:51:20 +0800</pubDate><description><![CDATA[我的博客原文：http://localhost:4000/blog/2019/12/31/20191231112532671/

引言：

使用 JavaScript，HTML 和 CSS 构建跨平台的桌面应用程序
Electron 基于 Chromium 和 Node.js
Electron 兼容 Mac、Windows 和 Linux，可以构建出三个平台的应用程序。

参考：

https:/...]]></description><category></category></item><item><title><![CDATA[基于H5实现图像处理：灰度化和二值化]]></title><link>https://blog.youkuaiyun.com/Machine4869/article/details/79996013</link><guid>https://blog.youkuaiyun.com/Machine4869/article/details/79996013</guid><author>Machine4869</author><pubDate>Wed, 18 Apr 2018 20:11:46 +0800</pubDate><description><![CDATA[概述

1. 利用h5的canvas画布实现图片绘制
2. 灰度化和二值化算法参考自
    https://www.cnblogs.com/rushoooooo/articles/2366154.html
3. 前置知识点： js, canvas




效果概览

 
 




完整代码



&amp;lt;!DOCTYPE HTML&amp;gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
 ...]]></description><category></category></item></channel></rss>