自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spark 和 kafka 集成 Spark Streaming + Kafka Integration Guide (Kafka broker version 0.10.0 or higher)

Kafka 0.10 与 Spark Streaming 流集成在设计上与0.8 Direct Stream 方法类似。它提供了简单的并行性,Kafka分区和Spark分区之间的1:1对应,以及对偏移量和元数据的访问。然而,由于新的集成使用了新的  Kafka consumer API 而不是简单的API,所以在使用方面有显著的差异。这个版本的集成被标记为实验性的,因此API有可能发生变化。链

2018-01-16 09:52:40 1682

原创 spark streaming kafka offset commit

由于spark的 rdd.asInstanceOf[HasOffsetRanges].offsetRanges这个操作:stream.foreachRDD { rdd => val offsetRanges = rdd.asInstanceOf[HasOffsetRanges].offsetRanges rdd.foreachPartition { iter =>

2018-01-11 15:59:54 637

原创 HBase delete 删除不掉 排查

hbase delete 踩坑今日问题:看如下的解释删除指定的所有版本以及删除指定列删除指定列的最新版本,意思就是:如果删除了最新的版本,查询的时候就会返回第二新的版本了/** * Delete all versions of the specified column. * @param family family name * @param qualifier co

2018-01-11 13:56:42 4279

原创 关于Spark Streaming 如何进行commit kafka的offset

收到就提交提交方式 记为 X:接收到数据就会直接commit,假如某个batch失败,重启job,则消费会从上次commit的offset消费,所以会导致失败的那个batch的部分数据丢失。batch结束才commit的方式 记为 Y:  会有消息重复消费的问题。如果要保证消费的逻辑的正确性,则需要做处理逻辑是幂等的。举例:假设三个batch,每个batch有三条消息 t1

2018-01-11 13:40:28 1405

原创 Spark Streaming 和kafka 集成指导(kafka 0.8.2.1 或以上版本)

本节介绍一下如何配置Spark Streaming 来接收kafka的数据。有两个方法:1、老的方法 -使用Receivers 和kafka的高级API2、新的方法( Spark 1.3 开始引入)-不适用Receivers。这两个方式拥有不同的编程模型,性能特征和语义保证,为了获得更多细节,继续往下读。对于目前的版本的spark。这两个方式都是稳定的。方法1 基于Receiver

2018-01-10 10:28:14 4031

原创 maven deploy return code is :401

入职新公司,mvn  deploy提示 以下错误。Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.5:deploy (default-deploy) on project wand: Failed to deploy artifacts: Could not transfer artifact com

2017-07-26 16:17:00 308

原创 spring-boot mybatis 集成

mybatis的集成有两种 一个是基于注解的 一种是基于xml的,我这使用的是基于xml的1、maven 配置 mysql mysql-connector-java 5.1.21 org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.0 2、直

2017-07-14 11:15:35 186

原创 spring boot 添加自定义配置文件并读取属性

spring 属性文件默认配置文件是从application.properties读取的,但是我想把配置文件分开,比如 业务的我想放在biz.properties, 客户端配置的放在client.properties ,但是注入呢,经过测试可以这么做比如

2017-07-14 11:01:28 2484

原创 io对比分析

1 同步阻塞IO用户线程通过系统调用read发起IO读操作,由用户空间转到内核空间。内核等到数据包到达后,然后将接收的数据拷贝到用户空间,完成read操作。用户线程使用同步阻塞IO模型的伪代码描述为:{read(socket, buffer);process(buffer);}2同步非阻塞IO用户线程系统系统调用read 后直接返回,然后

2017-06-16 16:08:21 198

转载 concurrentHashMap 实现

【转】并发编程实践中,ConcurrentHashMap是一个经常被使用的数据结构,相比于Hashtable以及Collections.synchronizedMap(),ConcurrentHashMap在线程安全的基础上提供了更好的写并发能力,但同时降低了对读一致性的要求(这点好像CAP理论啊O(∩_∩)O)。ConcurrentHashMap的设计与实现非常精巧,大量的利用了vola

2017-06-10 17:59:50 185

原创 自动装箱拆箱

public static void main(String[] args) { Integer a=1; Integer b=2; Integer c=3; Integer d=3; Integer e=321; Integer f=321; Long g=3l; Sy

2017-06-09 23:27:36 182

原创 聚簇索引

聚簇索引 数据行和索引存储在一起,数据行存储在索引的叶子节点上,每个叶子节点不仅函数索引项还有其他数据列,非叶节点只保存索引值

2017-06-08 21:01:08 186

原创 jvm工具

1 打印 堆快照 heapdumpjmap -dump:format=b,file=123.bin pid(进程)jmap -heap 打印内存信息2 打印 线程快照 threaddumpjstack -l pid

2017-06-08 20:24:46 178

原创 CMS 收集器过程

1 初始标记(STW)  标记GC Roots 直接关联对象2 并发标记 3 重新标记 STW 修正产生变动的对象的标记4 并发清除5 重置线程

2017-06-08 19:25:51 421

原创 parallel scavenge 与parnew 区别

两者都是复制算法,都是并行处理,但是不同的是,paralel scavenge 可以设置最大gc停顿时间(-XX:MaxGCPauseMills)以及gc时间占比(-XX:GCTimeRatio),

2017-06-08 19:18:21 6846

原创 功能平台化思考

将一些通用的功能组合成统一的功能结构,创建新的应用和平台

2017-06-07 15:34:26 215

转载 jvm 新生代

前言 JVM GC是JVM的内存回收算法,调整JVM GC(Garbage Collection),可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,所以我们要了解JVM内存组成,回收算法,对象分配机制。 JVM 堆内存组成Java堆由Perm区和Heap区组成,Heap区由Old区和New区(也叫Y

2017-03-08 15:56:24 341

原创 垃圾收集与内存分配策略

一、判断对象是否已经不会被使用      1、引用计数算法 对象每被引用一次,对象的引用计数器加1,反之减1 问题 :循环应用不能解决       2、可达性分析算法 GC Roots到该对象否有引用链 二、垃圾收集算法     1、标记清除算法      2、复制算法新生代都采用这个算法,参数-XX:ServiorRatio                Ed

2016-12-17 11:10:38 215

原创 java虚拟机运行数据区笔记

方法区:类的信息,常量池,静态变量堆:本地方法栈:执行native方法提供服务虚拟机栈:执行java方法提供服务程序计数器:保存执行指令的行数

2016-12-17 10:28:43 246

转载 java堆详解

摘要: 堆设置 -Xms :初始堆大小 -Xmx :最大堆大小 -XX:NewSize=n :设置年轻代大小 -XX:NewRatio=n: 设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n :年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survi

2016-12-13 20:26:21 380

原创 final fianlly finalize 笔记

final  修饰基本变量 不可修改修饰对象变量 变量的引用不可修改final修饰方法1、不允许被修改2、编译期直接插入到调用处final 修饰类

2016-12-11 10:36:37 352

原创 java io总结

io分类   按照流类型 :字符流,字节流字符流因为数据编码不同,从而有了对字符进行高效操作的流对象,本质就是基于自己流读取时,去查了指定的码表不同:读写单位不同,处理对象不同   按照方向:输入流,输出流输入流读操作,输出流写操作这里以一个具体案例来讲一下 FileInputStream,InputStreamReader,BufferedReader之间的区别,并类比输

2016-12-10 11:33:33 124

原创 jvm类装载过程笔记

类加载过程1、加载  a) 通过一个类的权限定名来获取此类定义的二进制字节流。b) 将这个字节流所代表的静态存储结构转换为方法区的运行时数据结构c) 在java堆中生成一个代表这个类的java.lang.Class对象,作为访问方法区的入口2、连接2.1验证   验证阶段作用是保证Class文件的字节流包含的信息符合JVM规范,不会给JVM造成危害。如果验证失败,就会抛

2016-12-10 09:33:49 212

转载 ImageIO drawString 中文乱码问题

最近在做一个有中文的验证码程序,由于程序是放在linux环境下的,生成的图片在前台一直显示为方框。一开始,不用说了,直接百度、google。第一点:不少人都说到了这点上:img.setFont(new Font("宋体", Font.BOLD, 20));写中文进入图片之前必须设置字体,而且这个字体必须支持中文,否则就会出现乱码或者方框、问号等等。但这个还不

2016-11-27 10:49:29 6060

空空如也

空空如也

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

TA关注的人

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