排序:
默认
按更新时间
按访问量

yarn 内存计算

Spark的Excutor的Container内存有两大部分组成: 堆外内存和Excutor内存   堆外内存(spark.yarn.executor.memoryOverhead)       主要用于JVM自身的开销。 默认: MAX(executorMemory * 0.10, 384...

2018-08-09 15:41:34

阅读数:24

评论数:0

Spark Shuffle 中 JVM 内存使用及配置内幕详情

引言 Spark 从1.6.x 开始对 JVM 的内存使用作出了一种全新的改变,Spark 1.6.x 以前是基于静态固定的JVM内存使用架构和运行机制,如果你不知道 Spark 到底对 JVM 是怎么使用,你怎么可以很有信心地或者是完全确定地掌握和控制数据的缓存空间呢,所以掌握Spark对JV...

2018-08-09 14:41:29

阅读数:16

评论数:0

配置管理库typesafe.config

Typesafe的Config库,纯Java写成、零外部依赖、代码精简、功能灵活、API友好。支持Java properties、JSON、JSON超集格式HOCON以及环境变量。它也是Akka的配置管理库. 纯java实现,无任何依赖 充分的测试 支持: Java properties, ...

2018-07-31 16:52:56

阅读数:20

评论数:0

Spark Streaming优雅的关闭策略优化

我们可以有两种方式来更加优雅的停止流程序,分别是通过http暴露服务,和通过HDFS做消息中转来定时扫描mark文件是否存在来触发关闭服务。 下面我们先来看下通过http暴露服务的核心代码: /**** * 负责启动守护的jetty服务 * @param port 对外暴露的...

2018-07-31 14:01:24

阅读数:45

评论数:0

spark读kafka数据 hbase存储

  package spark88.utils import kafka.common.TopicAndPartition import kafka.message.MessageAndMetadata import kafka.serializer.StringDecoder import...

2018-07-27 17:26:25

阅读数:30

评论数:0

spark 消费kafka 并发送 zookeeper存储

package kafka4.utils import kafka.common.TopicAndPartition import kafka.message.MessageAndMetadata import kafka.serializer.StringDecoder import org...

2018-07-27 16:57:11

阅读数:99

评论数:0

编解码器(自定义协议)

本blog主要介绍:  1. Codec 编解码器  2. Decoder 解码器  3. Encoder 编码器 netty提供了强大的编解码器框架,使得我们编写自定义的编解码器很容易,也容易封装个重用。 在网络应用中需要实现某种编解码器,将原始字节数据与自定义的消息对象进行互相转换。网络中...

2018-07-26 16:05:18

阅读数:29

评论数:0

NIO——(选择器)Selector

1. Selector简介 选择器提供选择执行已经就绪的任务的能力.从底层来看,Selector提供了询问通道是否已经准备好执行每个I/O操作的能力。Selector 允许单线程处理多个Channel。仅用单个线程来处理多个Channels的好处是,只需要更少的线程来处理通道。事实上,可以只用一...

2018-07-26 11:47:04

阅读数:23

评论数:0

NIO——(通道)Channel

Channel的分类 广义上来说通道可以被分为两类:File I/O和Stream I/O,也就是文件通道和套接字通道。如果分的更细致一点则是: FileChannel 从文件读写数据 SocketChannel 通过TCP读写网络数据 ServerSocketChannel 可以监听新进...

2018-07-25 18:53:03

阅读数:20

评论数:0

NIO——缓冲区(Buffer)

缓冲区(Buffer)就是在内存中预留指定字节数的存储空间用来对输入/输出(I/O)的数据作临时存储,这部分预留的内存空间就叫做缓冲区;在Java NIO中,缓冲区的作用也是用来临时存储数据,可以理解为是I/O操作中数据的中转站。缓冲区直接为通道(Channel)服务,写入数据到通道或从通道读取数...

2018-07-25 17:53:20

阅读数:19

评论数:0

Docker绑定固定IP/跨主机容器互访

 官网API:https://docs.docker-cn.com/reference/   原文地址,转载请注明出处:http://blog.csdn.net/qq_34021712/article/details/75948566   ©王赛超 前言 之前使用pipework 分配静态...

2018-07-24 17:03:43

阅读数:23

评论数:0

Kafka生产者事务和幂等

1 生产者幂等性 1.1 引入 幂等性引入目的: 生产者重复生产消息。生产者进行retry会产生重试时,会重复产生消息。有了幂等性之后,在进行retry重试时,只会生成一个消息。 1.2 幂等性实现 1.2.1 PID 和 Sequence Number 为了实现Producer的幂等性...

2018-07-24 10:45:46

阅读数:307

评论数:0

记一次耗时毛刺排查

前段时间的某天,注意到一个服务的平均耗时出现了如下图的毛刺现象。   耗时毛刺   注意到毛刺出现极其规律,每30分钟出现一个毛刺。考虑到这种规律性,并结合服务的流量较小(20 QPS)推测,可能是某个定时请求的接口进行了耗时操作,由于流量较小放大了平均耗时,继而出现了毛刺。但排查主调...

2018-07-23 17:00:23

阅读数:80

评论数:0

jstack性能问题定位案例分析详解

在Java应用的性能测试中,很多性能问题可以通过观察线程堆栈来发现,Jstack是JVM自带dump线程堆栈的工具,很轻量易用,并且执行时不会对性能造成很大的影响。灵活的使用jstack可以发现很多隐秘的性能问题,是定位问题不可多得的好帮手。 1 什么是线程堆栈 线程堆栈也称作线程调用堆栈。...

2018-07-23 16:58:54

阅读数:24

评论数:0

Java8内存模型—永久代(PermGen)和元空间(Metaspace)

一、JVM 内存模型   根据 JVM 规范,JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分。   1、虚拟机栈:每个线程有一个私有的栈,随着线程的创建而创建。栈里面存着的是一种叫“栈帧”的东西,每个方法会创建一个栈帧,栈帧中存放了局部变量表(基本数据类型和对象引用...

2018-07-20 16:45:26

阅读数:53

评论数:0

Eclipse MAT(Memory Analyzer Tool)使用

 MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止了垃圾收集器的回收工作,并...

2018-07-19 15:41:30

阅读数:19

评论数:0

JVM参数设置、分析

 不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI...

2018-07-19 15:34:37

阅读数:19

评论数:0

hive分区表增加字段新增字段值为空的bug

网上查了资料,提供了两种解决办法: 1. 修改hive元数据SDS表的CD_ID字段,原因是修改表结构后,元数据库中的SDS中该表对应的CD_ID会改变,但是该表分区下面对应的CD_ID还是原来表的CD_ID 2.删除当前分区重建 这两个办法都不太适应,办法1修改元数据库风险大,办法2可能会...

2018-07-18 18:00:09

阅读数:31

评论数:0

oozie 在cdh下时区问题

修改oozie配置 <property> <name>oozie.processing.timezone</name> <value&a...

2018-07-18 17:48:44

阅读数:31

评论数:0

grpc 简单实例补充

消费mq配置  spring-rabbitmq-message.xml  <?xml version="1.0" encoding="UTF-8"?> <b...

2018-07-18 17:27:31

阅读数:30

评论数:0

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