自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 问答 (3)
  • 收藏
  • 关注

原创 使用JVM监控命令解决程序假死现场

一开始没认为是内存问题导致的,因为先入为主,认为程序如果是内存问题导致的应该会报错OOM,而此时的问题是假死,所以认为是CPU使用导致程序缓慢,使用top查看了一下进程,发现CPU并没有跑满。没有报OOM也是因为流式读取的原因,触发FULLGC后,读取少量数据,再触发FULLGC,在读取少量数据,直到最后最小的一行内存也申请不到之后,才会OOM。使用jstat 查看垃圾回收情况,发现FULLGC时间持续增长。确认是内存问题导致的,于是查看代码发现代码是通过流式的方式,一行行载入到内存当中。

2024-08-17 19:13:58 353

原创 你好热水器

热水器推荐

2023-03-11 14:41:43 404

原创 Java程序模拟cpu飙升问题排查

模拟不断的运算,会造成cpu使用率的飙升。所以我们需要在Java程序中做运算,一个线程有可能飚不到很高,所以我们启动了10个线程。@RequestMapping("/main")public class MainController { private static volatile boolean exit= true; @RequestMapping("/start...

2020-04-29 16:27:22 701

原创 Java多线程锁基础实践

原因书看多了、视频看多了。感觉自己懂了,其实没懂。抽时间整理一下。锁我们第一个反应都是synchronize、ReentrantLock 两个可重入锁,然后优缺点都能说一大堆,各种资料中也有。今天我就简单的实践下,这个锁具体竞争资源是怎么样的。第一种 synchronize(this) 锁当前实例,Demo是没一个线程都创建一次的话,那么是不安全的public class Demo ...

2020-04-02 15:51:16 169

原创 记录一次Hadoop二次开发过程

背景在使用Hadoop集群过程中,出现如下错误,Namenode 宕机,日志如下2016-08-09 16:33:51,526 INFO org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager: Waited 6001 ms (timeout=20000 ms) for a response for sendEdits. Succ...

2020-04-01 15:55:42 992

原创 apache 大数据单机环境安装摘要

安装顺序ZookeeperHadoopKafka(需要依赖外置ZK)Hbase(需要依赖外置ZK)Flume摘要1.ZK无其他依赖、提前创建data文件配置zoo.cfg的datadir 启动2. Hadoop无其他依赖、需要配置5个xml文件,保证mr、yarn全都可用。可以参看 伪分布式搭建3. Kafka需要依赖zk 配置server.properties、zoo...

2020-03-23 19:30:33 238

原创 namenode双缓冲写入数据

直接贴代码package com.asiainfo.custom.doublebuff;import java.util.LinkedList;/** * 总结,采取了分段锁,将(获取事务id->写内存数据)(刷盘)进行分段锁。就是说, * 多线程顺序写数据。使得可以多线程批量刷数据。 * 如果不使用双缓冲,那么读写就只能在一块内存中 * 如果不使用分段锁,那么就只能串行刷...

2020-02-28 23:19:59 302

原创 Spark源码

Spark版本:2.1.xSpark有许多模式,比如standlone 这里分析Spark on yarn 的部署流程。在这种模式中有几个重要的角色我们列出来。Driver、Executor、AM、NM、RM等,我们将在源码中将这几个组件串联起来,分析在Spark on yarn下这几个组件是如何工作的。入口spark-submit 中调用的类为 org.apache.spark.deplo...

2020-02-25 15:00:39 140

原创 Spark自定义读hbase数据源

背景我想以简单的形式在Spark中读取Hbase数据,但是Spark并不支持读取Hbase数据。思考能否自己实现这个读取的过程?Hbase的读写API,我们可以查的到。我们是否可以将Hbase数据通过转化,直接转化为DataFrame,方便我们使用。所以,如果可行的话,总体思路可以分为几个步骤。1验证下Spark如何读取数据源,2Hbase的数据结构,3如何转化为Spark的数据结构(DataF...

2020-02-11 17:28:38 511

原创 kafka重复消费数据

情景scala代码中,接受kafka数据,在接受过程中,发现读取的数据一直是重复的offset值。发现代码中是这么写的while(consumerRecords.iterator().hasNext()){ val record:consumerRecords[String,String] = consumerRecords.iterator().next() //之后的逻辑都是使用操作r...

2020-01-29 17:24:44 231

原创 Spark中map与mapPartition使用区别

在日常开发工作中这两个算子都是我们经常使用到的算子介绍map():参数是传入一个函数。当使用时,实际参数经过map(func) 参数func逻辑后返回的数据,组成一个新的RDD。所以,每一行数据都会经过这个函数处理。假设实际数据有M行,则map()方法将会执行M次。mapPartitions():使用方法类似于map(),但是独立的在每一个分区上运行,也就是说,这个方法只会运行与分区数相同的...

2020-01-28 17:00:41 1090

原创 kafka重复消费、漏消费情况

重复消费的情况ack = -1 当broker宕机,会造成消息重发,broker会存储重复数据先消费,后提交offset

2020-01-13 23:16:08 1773

原创 exactly once kafka实现

由来今天,我就想看一看kafka的exactly once 相关的知识。随后我百度了几篇文章,都不尽如人意。我想能搜索exactly once 关键词的肯定都是对于kafka有一定的基础了解了吧,结果我搜索出来的都是一些长篇大论,没有主次,不清楚是哪里摘抄的。后面我又看了写视频,才算有了写直观认识。exactly once在早期版kafka版本上,我们可以设置ack = 1,-1,0 来分别...

2020-01-13 17:27:42 306

原创 MySQL的explain命令

SQL的优化不得不提到索引,索引可以极大的提高SQL语句的查询性能。但是当我们维护一个SQL的时候,如何去入手优化这条语句呢。我理解可以分为以下这几个步骤。拿到慢SQL在生产中,我们要如何定位到查询比较慢的SQL语句呢。我们可以查看MYSQL的慢查询日志。现在以我本地的表为例。如何查看show variables like '%slow_query_log%';结果:slow_que...

2019-09-29 18:15:36 149

原创 SpringBoot启动过程(二)

ImportSelector调用我们上一片文章剖析到了@Import注解方法,以及AutoConfigurationImportSelector.class 的作用,他的作用就是定义了ImportSelector()方法,然后等待Spring去调用此方法。那么Spring是如何调用此方法的呢,一起来找一下。首先得有个思路,不能盲目的去找。我们既然知道是Spring调用的此方法,那么Spring...

2019-09-25 16:25:00 103

原创 Springboot启动过程

main方法剖析我们都知道Springboot的main方法启动非常的方便,那么它是如何启动的呢,一起来剖析一下。下面这是一个Springboot 启动的常规没方法,映入眼帘的就是 @SpringBootApplication,与SpringApplication静态类调用的run()方法。我们不清楚的前提下,一层层的点进去看。@SpringBootApplicationpublic cl...

2019-09-19 17:57:30 170

空空如也

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

TA关注的人

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