自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 线程池,单例模式

javac SynchronizedDemo.java 命令生成编译后的 .class 文件 javap -c -s -v -l SynchronizedDemo.class wait会把锁释放掉 单例模式需要把那个变量volatile,然后在getXXX方法里面先判null,这个依然不好,在n...

2019-07-25 22:19:03

阅读数 20

评论数 0

转载 CAS与sync(县城切换)的区别

概述 Java 中的并发锁大致分为隐式锁和显式锁两种。隐式锁就是我们最常使用的 synchronized 关键字,显式锁主要包含两个接口:Lock 和 ReadWriteLock,主要实现类分别为 ReentrantLock 和 ReentrantReadWriteLock,这两个类都是基于 A...

2019-07-23 22:46:17

阅读数 18

评论数 0

转载 netty 和 copy-free相关

上一篇说到了CompositeByteBuf,这一篇接着上篇的讲下去。 FileRegion 让我们先看一个Netty官方的example // netty-netty-4.1.16.Final\example\src\main\java\io\netty\example\file\Fil...

2019-07-07 16:53:52

阅读数 20

评论数 0

原创 jdk8的async实现

https://www.jianshu.com/p/547d2d7761db package com.zxg; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorServi...

2019-07-04 23:05:45

阅读数 98

评论数 0

原创 flink 源码第二轮

BasicTypeInfo: 任意Java 基本类型(装箱的)或 String 类型。 BasicArrayTypeInfo: 任意Java基本类型数组(装箱的)或 String 数组。 WritableTypeInfo: 任意 Hadoop Writable 接口的实现类。 TupleTypeI...

2019-06-28 18:18:13

阅读数 70

评论数 0

转载 ByteBuf 详解

@author 鲁伟林 记录《Netty 实战》中各章节学习过程,写下一些自己的思考和总结,帮助使用Netty框架的开发技术人员们,能够有所得,避免踩坑。 本博客目录结构将严格按照书本《Netty 实战》,省略与Netty无关的内容,可能出现跳小章节。 本博客中涉及的完整代码: GitHub地址:...

2019-06-25 00:16:05

阅读数 610

评论数 0

原创 canal 相关问题

git clone git@github.com:alibaba/canal.git git co canal-$version #切换到对应的版本上 mvn clean install -Denv=release show variables like 'log_%'; /...

2019-06-20 19:47:43

阅读数 130

评论数 0

原创 flink 相关

计算flink的时候可以有一个旁流的概念 使用底层的process算子,就可以获取到一个ctx 的,可以在map的时候往里写东西 在 main stream上面可以通过 getSideOutput 来获取到这个流,对他进行流的处理 ==============================...

2019-06-19 14:32:44

阅读数 31

评论数 0

原创 flink runtime network related

* An input gate consumes one or more partitions of a single produced intermediate result. * * <p>Each intermediate result is partitioned over i...

2019-06-09 20:14:25

阅读数 27

评论数 0

转载 转发 堆外内存讲解

最近看了一篇文章《蚂蚁消息中间件 (MsgBroker) 在 YGC 优化上的探索》。 文章涉及JVM的垃圾回收,主要讲的是通过使用「堆外内存」对Young GC进行优化。 文章中介绍,MsgBroker消息中间件会对消息进行缓存,JVM需要为被缓存的消息分配内存,首先会被分配到年轻代。 当...

2019-06-06 20:34:09

阅读数 46

评论数 0

转载 转发 flink的 memorysegment

如今,大数据领域的开源框架(Hadoop,Spark,Storm)都使用的 JVM,当然也包括 Flink。基于 JVM 的数据分析引擎都需要面对将大量数据存到内存中,这就不得不面对 JVM 存在的几个问题: Java 对象存储密度低。一个只包含 boolean 属性的对象占用了16个字节内存:...

2019-06-06 20:17:35

阅读数 63

评论数 0

原创 flink 于 kafka互操作

final StreamExecutionEnvironment env = StreamExecutionEnvironment .getExecutionEnvironment(); JSONKeyValueDeserializationSch...

2019-06-06 18:17:31

阅读数 117

评论数 0

原创 sqoop 的一些命令和一个坑

qoop-import --as-avrodatafile --table film --target-dir /input --connect jdbc:mysql://192.168.13.128/sakila?tinyInt1isBit=false --username root --pas...

2019-06-05 18:55:16

阅读数 126

评论数 0

原创 netty 的一些笔记

在 Netty 中,有两种发送消息的方式。你可以直接写到 Channel 中,也可以 写到和 ChannelHandler相关联的ChannelHandlerContext对象中。前一种方式将会导致消息从ChannelPipeline 的尾端开始流动,而后者将导致消息从 ChannelPipeli...

2019-06-05 18:52:50

阅读数 34

评论数 0

原创 flink 基本

flink run /opt/flink-1.7.2/examples/batch/WordCount.jar -input hdfs://192.168.13.128:9000/input/myfile.txt -output hdfs://192.168.13.128:9000/output/...

2019-06-02 17:10:51

阅读数 38

评论数 0

原创 innodb相关知识

show VARIABLES like 'log_error' show VARIABLES like 'long_query_time' show VARIABLES like 'log_slow_queries' show VAR...

2019-05-21 15:42:39

阅读数 32

评论数 0

原创 threadlocal和AQS相关

import java.text.SimpleDateFormat; import java.util.Random; public class ThreadLocalExample implements Runnable{ // SimpleDateFormat 不是线程安全的,所以每个...

2019-05-21 13:22:33

阅读数 58

评论数 0

原创 jvm相关

jdk在运行是有个计数器,可以理解为当前代码段的行号 每个独立的线程都有一个独立的计数器,以便在切换后可以保持原有的现场 计数器是不会出现oom现象的 虚拟机栈也是线程私有的,每个方法都会创建一个栈帧,每个方法执行完成就是一个入栈出栈的过程 如果栈深度超过允许深度,就会抛出stackoverfl...

2019-05-21 09:46:58

阅读数 33

评论数 0

原创 java的注解与AOP

注解可以加在不同的地方,主要就是在反射的时候给一个类带上更多的信息 例子: @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface UseCase { public int i...

2019-05-19 23:43:42

阅读数 170

评论数 0

转载 jvm gc相关

jdk在运行是有个计数器,可以理解为当前代码段的行号 每个独立的线程都有一个独立的计数器,以便在切换后可以保持原有的现场 计数器是不会出现oom现象的 虚拟机栈也是线程私有的,每个方法都会创建一个栈帧,每个方法执行完成就是一个入栈出栈的过程 如果栈深度超过允许深度,就会抛出stackoverfl...

2019-05-11 19:17:16

阅读数 16

评论数 0

转载 innodb得锁

(本文为了方便,英文关键词都都采用小写方式,相关知识点会简单介绍,争取做到可以独立阅读) 文章开始我会先介绍本文需要的知识点如下: innodb的聚簇索引(聚集索引)和非聚簇索引(二级索引、非聚集索引)的知识 innodb的隔离级别(isolation level) 简单的sql知识(能读懂s...

2019-05-11 19:16:21

阅读数 143

评论数 0

原创

about lock 关于锁有三个标准: 1,能否正确做到互斥 2,能否做到公平(有些人处于饥饿状态) 3,能否有效率,不要死循环去查询锁是否就绪了 load-and-store 最简单的锁就是尝试去设置一本变量的位,其他的人则死循环等待 test-and-set 就是一个原子的是不是0位然...

2019-05-04 17:31:26

阅读数 7

评论数 0

转载 BIO NIO

本文从操作系统的角度来解释BIO,NIO,AIO的概念,含义和背后的那些事。本文主要分为3篇。 第一篇 讲解BIO和NIO以及IO多路复用 第二篇 讲解磁盘IO和AIO 第三篇 讲解在这些机制上的一些应用的实现方式,比如nginx,nodejs,Java NIO等 到底什么是“IO Bloc...

2019-05-03 22:38:17

阅读数 9

评论数 0

原创 zookeeper原理及应用

zk 在客户端连接的时候会有一个sessiontimeout,session timeout 之前只要连接上一台机器就不算断开连接了 ZAB需要保证的是当3号变更被执行的时候1,2两个变更都已经确定被执行了 ZK是使用一个类似于二阶段提交的过程,客户端提交到了proposer上,然后到mast...

2019-05-03 22:02:22

阅读数 13

评论数 0

原创 redis 相关内容

Redis相关的应用有分布式锁,发布订阅,限流等 先看看相关代码 悲观锁 package com.redis.distroLock; import redis.clients.jedis.Jedis; import redis.clients.jedis.commands.JedisComman...

2019-05-02 18:54:22

阅读数 26

评论数 0

原创 面试问题

1,golang的内存泄漏,GC go如果使用一个_来接受一个指针,就会导致GC的时候始终无法回收一块内存空间 2,java HashMap Hash其实是一个指针的列表,将hash冲突的部分放在指针后面,逐个往后。 列表太大了会性能不好,需要增加一个数散列开 开放定址法(...

2019-04-22 22:17:42

阅读数 19

评论数 0

原创 回溯法经典

public List<List<Integer>> permute(int[] nums) { List<List<Integer>> list = new ArrayList<>(); // Arrays.sort(num...

2019-04-17 00:36:31

阅读数 20

评论数 0

原创 运行flink on yarn遇到的一些问题

1,根据hadoop的版本在flink的页面上下载对应于hadoop版本和scala版本的flink的包 2,使用start-yarn.sh在集群上运行yarn,启动后可以在8088上面找到yarn的web界面 需要注意的是,需要将resourcemanager的地址指向master的地址 ...

2019-04-08 10:35:38

阅读数 536

评论数 0

原创 redis 事件处理

redis 代码解读 redis 5.0.4 ae.c里面定义了四种mask None 没有事件 read cli读取 write cli 写,连接, 断开 barrier 对于文件事件进行了一个封装 typedef struct aeFileEvent { // 文件时间类型:AE_N...

2019-03-28 21:27:31

阅读数 32

评论数 0

原创 k8s 初体验

公司的项目老板提出使用k8s于是踩了这一趟坑 场景是这样: 有三个前端的调度节点,使用quartz集群,每次有一个节点会去触发一个Datax的任务运行,看了下k8s in action这本书,发现job这种场景天生适合这个场景,回忆了一下心得 1,本地编docker镜像: 编写...

2019-03-23 21:58:28

阅读数 56

评论数 0

原创 使用IJ写scala的两种方式

使用ij写scala有两种方法, 1,使用maven来管理 创建maven项目后把java相关的路径删除,然后将java相关的路径都删除 在project structure将scala对应版本导入 <?xml version="1.0" encoding=...

2019-03-22 12:57:27

阅读数 134

评论数 0

原创 树遍历

public List<Integer> inorderTraversal(TreeNode root) { List<Integer> list = new ArrayList<Integer>(); Stack<TreeNode>...

2019-02-27 23:44:33

阅读数 31

评论数 1

转载 mvn 依赖冲突

在本系列的上一篇文章中,我们讲到了如何使用Profile,在本文中,我们将讲到如何处理Maven的依赖冲突。   不知道你在使用Maven时是否遇到过诸如"NoSuchMethodError"或"ClassNotFoundException"之类的问题,...

2019-02-20 18:26:29

阅读数 43

评论数 0

原创 Quartz的冲突处理

说明一下如何处理好quartz的调度关系 首先查看一下quartz的配置,有设置thread factory的方法,具体没有试过。还有thread factory的大小的设置 org.quartz.scheduler.jobFactory.class:com.yh.bigdata.silkworm...

2019-02-17 11:49:06

阅读数 354

评论数 0

原创 一个动归的例子--最长递增子序列(Longest Increasing Subsequence,lis)

难度评级:★    对于一个序列如1,-1,2,-3,4,-5,6,-7,其最长第增子序列为1,2,4,6。 解法:   除了利用3中lcs来求解,这里使用求解lis问题的专门方法。   先看看如何确定子结构的表示。对于长度为k的序列s[1...k],如果用lis[k]记录这个序列中最长子...

2019-02-13 09:39:23

阅读数 59

评论数 0

原创 回溯法--例子

一句话开场: 回溯法就是对隐式图的深度优先搜索 bool finished = FALSE; /* 是否获得全部解? */ backtrack(int a[], int k, data input) { int c[MAXCANDIDATES]; /*这次搜索的候选 */ i...

2019-02-06 22:15:26

阅读数 101

评论数 0

转载 简单的乐观锁实现

https://blog.csdn.net/hh1sdfsf56456/article/details/79449714   最简单的乐观锁实现就是在更新的时候,where里面加上version字段,这样的话,如果数据已经更新掉了,就不能再更新了...

2019-01-31 17:30:31

阅读数 452

评论数 0

原创 etcd相关总结

etcd  sudo wget https://github.com/etcd-io/etcd/releases/download/v3.2.26/etcd-v3.2.26-linux-amd64.tar.gz sudo tar -xzvf ./etcd-v3.2.26-linux-amd64...

2019-01-31 17:24:58

阅读数 87

评论数 0

转载 数据库锁

一、悲观锁和乐观锁   我们经常在开发中遇到数据库并发处理时,处理不一致的问题。需要对程序做并发控制。 典型的并发时出现的冲突有两种: 1、丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。 例如X=0  A1把X=X+1  A2也设置X=X+1    如果A1和A2同时执行,...

2018-12-16 16:33:09

阅读数 24

评论数 1

原创 安装azkaban的时候遇到的一些问题

1,将gradlew转化为maven: 注意group和version要保持一致,否则会导致最后的maven依赖失败 在根目录和各个子目录当中的gradlew文件当中纷纷加入以下脚本: apply plugin: 'java' apply plugin: 'ma...

2018-12-05 20:35:37

阅读数 507

评论数 0

提示
确定要删除当前文章?
取消 删除