自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Java Nio之selector

我们先看看传统I/O模型工作模式:每条socket链路都由一个单独的线程负责处理,这对于大容量、高并发的应用程序来说,使用上千万个线程来处理请求几乎是不可能实现的。多路复用IO模型的工作模式:在多路复用IO模型中,只需要使用一个线程就可以管理多个socket,并负责处理对应I/O事件。这对于构建高并发、大容量的服务端应用程序来说是非常有意义。从图中我们可以看出,多路复用IO模型中,使用了一个Selector对象来管理多个通道,这是实现单个线程可以高效地处理多个socket上I/O事件

2021-08-07 14:49:38 514

原创 spark 内存溢出导致executor挂掉的原因

通常我看看到的表象是类似于 shuffle fetch fail ..caused by 某个host lost connection 这就是内存溢出挂掉了。为什么会出现这种情况呢。1. 首先对于缓存非序列话数据的集合都实现了SizeTracker接口类,该接口有估计集合大小的方法,而SizeTracker接口类实际使用的是采样估计,在两次较为准确的采样估计之间,集合的大小是通过平均数计算的方法得到的大小,就容易导致如果在前几次更新的数据较小导致平均数较小,而现在数据较大,计算得到的大小远小于实际大小

2021-07-29 00:03:38 679

原创 flink 写入kafka报错 *** ms has passed since batch creation plus linger time

首先我们来看看batchsize 和linger timeKafka需要在吞吐量和延迟之间取得平衡,可以通过下面两个参数控制.batch.size 当多个消息发送到相同分区时,生产者会将消息打包到一起,以减少请求交互. 而不是一条条发送 批次的大小可以通过batch.size 参数设置.默认是16KB 较小的批次大小有可能降低吞吐量(批次大小为0则完全禁用批处理)。 一个非常大的批次大小可能会浪费内存。因为我们会预先分配这个资源。例子比如说发送消息的频率就是每秒...

2021-07-02 15:54:29 9426 3

转载 记录Flink1.9线上checkpoint失败的问题

记录Flink1.9线上checkpoint失败的问题最新在线上更新了代码之后导致了任务在消费kafka数据的时候,突然就不消费数据了,发现原因在公司的可视化界面中,看不到数据的更新,进入flink监控页面中看到任务没有failover过的记录任务界面虽然任务在正常的运行中,但实际情况是已经不消费数据了,最开始以为代码有问题,经过检查发现代码没有问题,然后查看checkpoint的情况,发现了问题,flink在做checkpoint的时候出现了失败checkpoint失.

2021-01-26 10:58:01 924

原创 flink rich function的open和close方法执行时机

我们在使用flink的时候,经常会有自定义函数的时候,我们可以继承相关的richXXXFunction类,这个类里面会有open,close方法进行相关初始化和关闭的操作,那么这些方法是什么时候执行的呢?带着这个问题,我们以自定义SourceFunction为例,进行研究。我们可以自定义source,也比较方便,extends RichSourceFunction 这个类就可以实现,下面的例子就是我们定义一个mysql的sourcepublic class MySource extends Ric

2021-01-23 17:34:25 10580 5

转载 Flink中异步AsyncIO的实现 (源码分析)

Flink中异步AsyncIO的实现 (源码分析)先上张图整体了解Flink中的异步io阿里贡献给flink的,优点就不说了嘛,官网上都有,就是写库不会柱塞性能更好然后来看一下, Flink 中异步io主要分为两种  一种是有序Ordered  一种是无序UNordered主要区别是往下游output的顺序(注意这里顺序不是写库的顺序既然都异步了写库的顺序自然是无法保证的),有序的会按接收的顺序继续往下游output发送,无序就是谁先处理完谁就先往下游发送两张图了解这两种模.

2021-01-23 12:22:57 143

原创 leetcode23:合并K个升序链表

思路:常规思路/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next

2021-01-22 11:58:01 63

原创 flink keyby操作的原理

对比spark:spark的keyby操作是按照key将所有的value聚合成一个collectionflink的keyby:则主要是将相同key的元素拉到同一个partition,因此也会在同一个task中被处理,但是元素与元素之间并没有聚合的操作。...

2021-01-20 14:49:55 3089

转载 mapper类中SetUp函数详解

hadoop中的MapReduce框架里已经预定义了相关的接口,其中如Mapper类下的方法setup()和cleanup()。----setup()此方法被MapReduce框架仅且执行一次,在执行Map任务前,进行相关变量或者资源的集中初始化工作。若是将资源初始化工作放在方法map()中,导致Mapper任务在解析每一行输入时都会进行资源初始化工作,导致重复,程序运行效率不高!...

2019-03-05 10:50:39 1668

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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