自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一碗糊涂虫的博客

IT底层搬砖民工

  • 博客(14)
  • 收藏
  • 关注

原创 生产CPU 100% 问题排查解决方案

生产CPU 100% 问题排查解决方案不知道大家在工作中有没有遇到过 线上代码CPU突然飙高,然后就会持久不下的情况?如果有呢,大家肯定有解决方案了,如果没有的话可以来看看本篇教程,面试的时候可以吹一吹哦~先给大家列几项可能Cpu 飙高的几种可能:磁盘占用满,应用无法卡住无法运行(情况及其常见!!!我和朋友们都遇到过!!)这种情况要怎么解决呢? 在服务器中 输入 df -h 命令 查看磁盘空间是否是100%状态如果是100%状态,请删除一些log日志文件 / 删除无用的备份文件即可

2021-03-05 16:16:02 1660 2

原创 Java并发包JUC学习

Java JUC1 Java JUC简介在 Java 5.0 提供了 java.util.concurrent (简称 JUC )包,在此包中增加了在并发编程中很常用 的实用工具类,用于定义类似于线程的自定义子 系统,包括线程池、异步 IO 和轻量级任务框架。 提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的 Collection 实现等。2 volatile 关键字-内存可见性2.1 内存可见性Java 内存模型规定,对于多个线程共享的变量,存储在主内存当中,每个线程都有自己独立的工

2020-11-17 10:23:28 229

原创 大数据学习-Hadoop-FileInputFormat源码分析

本片文章开始整理FileInputFormat切片源码解析(input.getSplits(job))的学习笔记getSplitspublic List<InputSplit> getSplits(JobContext job) throws IOException { // 开启一个计时器,计时的单位是纳秒 StopWatch sw = new StopWatch().start(); // 设置minSize的初始值,做法是取最小切片的大小和配置切片的最小值中的最大值作

2020-11-11 10:17:24 292

原创 大数据学习-Hadoop-Job提交源码分析

由于近期有想转大数据行业的想法,所以开始研究大数据,我也会慢慢的将我的学习资料发到平台上来,今天带大家看一下Hadoop的MapReduce的Job提交工作的源码分析!代码大致流程Driver类调用waitForCompletion方法job.waitForCompletion(true);首先执行submit方法进行异常判断ensureState(JobState.DEFINE);API转换setUseNewAPI();连接创建connect();创建提交job代理ne

2020-11-10 16:36:14 161

原创 深入理解Java虚拟机(一)

深入理解Java虚拟机Java虚拟机内存区域对于从事C/C++程序开发的开发人员来说,在内存管理区域,他们既拥有每一个对象的”所有权“,又担负着对每一个对象声明从偶开始到终结的责任。对于java程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,虽然使用虚拟机管理内存十分方便,但是一旦uxianle内存泄露和溢出方面的问题,如果不了解虚拟机怎样使用内存,那么排查错误、修正问题将会成为一项十分艰难的工作。Java虚拟机运行时数.

2020-09-11 16:02:29 104

原创 高性能MySql(一)

表锁(table lock)表锁是最MySql最基本的锁策略,并且是开销最小的策略,表锁会锁定整张表,一个用户在对表进行写操作(插入、删除、更新等)前,需要先获取到写锁,这会阻塞其他用户对该表的读写操作。只有没有写锁时,其他读取的用户才能获得读锁,读锁是不互相阻塞的。行级锁(row lock)行级锁可以最大程度的支持并发处理。本锁是对数据表中的行进行加锁操作。数据库事务的ACID原子性一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚

2020-09-11 16:01:53 180

原创 组合模式

什么是组合模式?组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。透明组合模式UML透明模式是把组合使用的方法放到抽象类中,不管叶子对象还是树枝对象都有相同的结构,这样做的好处就是叶子节点和树枝节点对于外界没有区别,它们具备完全一致的行为接口。但

2020-09-11 16:01:08 746

原创 装饰者模式

什么是装饰者设计模式装饰着模式:简单的一句话理解就是,动态的给一个对象添加一些额外的功能,装饰者模式相对于生成子类更加的灵活装饰者设计模式UML图可以通俗理解为装饰者设计模式的组成 Component(抽象构件):它是装饰类和具体构件的公共父类; ConcreteComponent(具体构件):具它是抽象构件对象的子类,用来定义具体的构件对象; Decorator(抽象装饰类):进继承抽象构件,用于给具体的构件添加一些新的职责; ConcreteD

2020-09-11 16:00:36 178

原创 原型模式

原型模式在说明本模式的用处之前,我们先来举两个例子:假设有1只羊,我们想利用克隆技术,来获得10只一模一样的羊,假设使用代码实现,我们可以使用以下代码:public class Demo1 {public static void main(String[] args) { Sheep s = new Sheep("Wills",23); Sheep s1 = new Sheep(s.getName(),s.getAge()); Sheep s2 = new Sheep...

2020-09-11 16:00:06 102

原创 适配器设计模式

基本介绍爱好数码产品/游戏主机的帅哥美女们应该知道,如果我们购买了一个港版或者美版/欧版的机器,那么我们的电源线一定是要使用转换插头(Adapter)才能让机器开机的,其转换插头就是就是适配器(Adapter)了,而我们今天讲解的就是适配器设计模式 适配器模式(Adapter Pattern)将某个类的接口转换为客户端期望的另一个接口表示,主要目的是兼容性,让原本因为接口不匹配不能一起工作的两个类可以协同工作,还有另一个叫法叫做:包装器(Wrapper,是不是在很多源码中看到过?)

2020-09-11 15:59:35 110

原创 桥接模式

设计模式引入手机操作问题:现在对不同手机类型的不同品牌实现操作编程(比如:开机、关机、上网,打电话等),如图:如果按照我们初学Java编程可以很容易实现,思路呢类似于以下图:从功能上来说,这样设计是可以的。但是,若是增加一种新的样式,那么同样的它也会新增不同品牌手机的子类,这样就会导致类爆炸的问题。如果添加一个旋转系列的手机,就会做如下操作传统方案解决手机操作问题分析: 扩展性问题(类爆炸),如果我们再增加手机的样式(旋转式),就需要增加各个品牌手机的类,同样如果我

2020-09-11 15:59:03 118

原创 建造者模式

建造者模式传统小例子-盖房子 需要建房子:这一过程为打桩、砌墙、封顶 房子有各种各样的,比如普通房,高楼,别墅等房子虽然一样,但是要求是不相同的 编写程序完成需求 传统编码方式图解传统方式代码package com.atguigu.builder;public abstract class AbstractHouse { //打地基 public abstract void buildBasic(); //砌墙 public ab...

2020-09-11 15:58:30 115

原创 工厂设计模式

简单工厂模式 看一个具体的需求​ 有一个披萨的项目,要求便于披萨种类的扩展,便于维护​1. 披萨的种类很多 比如:GreekPizza CheesePizza等2. 披萨的生产过程有:prepare、bake、cut、box3. 完成披萨店订购的功能+ 优点是比较好理解,简单易操作+ 缺点是违反了设计模式的ocp原则,即对扩展开放,对修改关闭,即当我们给类增加新功能的时候,尽量不修改代码,或者尽量少修改代码+ 如果要增加一个新的口味的披萨,则需要增加一个类的代...

2020-09-11 15:57:53 66

原创 单例设计模式

所谓类的单例设计模式,就是采取一定的方法保证在整个系统中,对某个类只能存在一个对象实例,并且该类只能提供一个取得其对象实例的方法(静态方法)。现在常见的设计模式有八种:饿汉式(静态常量) package com.wills.designMode.signleton;​/** * 本例讲述饿汉式单例模式 * 应用实例:步骤如下: * * 1. 构造器私有化 * 2. 类的内部创建对象 * 3. 想外暴露一个静态的公共方法(getInstance) ...

2020-09-11 15:57:08 70

空空如也

空空如也

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

TA关注的人

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