自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (3)
  • 收藏
  • 关注

原创 2021-01-21

问题描述:在使用Java客户端连接hbase服务时出现超时(timeout=60000)。组件版本 jdk1.8 hbase1.3.1 hadoop2.7.5解决方案:在window客户端配置hosts文件。hosts文件的具体路径在:C:\Windows\System32\drivers\etc\hosts例如:个人观点:这个问题发生的其实很突兀,我理解时hbase客户端源码存在问题,它内部应该时将传入的主机IP地址与hosts文件进行了强关联,也就是必须配置hosts文件..

2021-01-21 14:52:21 222

原创 hadoop环境搭建从零到一

一.为什么要搭建hadoop环境?第一,本人对hadoop生态圈有一定的兴趣。第二,leader让我了解的,估计是要让我搞这个了。二.什么是hadoop生态?其实如果你不知道hadoop生态和大数据是干什么的,你就不用往下看了。三.总体流程规划。1.准备虚拟机2.下载所需要的一些安装包。3.相关软件的安装与环境变量的配置(只需先安装在某一台机器上,然后进行虚拟机的拷贝)。4.编译hadoop源码(编译hadoop源码的时间很长,大概两个小时,这还是在大部分引用都来自本.

2020-12-04 18:15:01 679

原创 mac so 下 apache + php 的自由组装

再此之前我要说一句“Java天下第一”(字写小一点,怕被锤)初触php:起初是因为工作的原因接触到了php,虽然可以看懂和书写一些简单的php代码,但是还是想找机会深入的学习一下php,毕竟在php程序员看来“php是世界上最优秀的语言”.闲叙:因为我用的机器以前别人用过,所以上面环境比较混乱,各种坑,配置过程步步为坑,比较艰辛,所以做此博客,望你一马平川...

2020-04-16 20:59:32 465

原创 浅析布隆过滤器

其实对布隆过滤器的了解是因为“布隆”这个英雄!哈哈哈哈哈哈。布隆过滤器的使用场景:我们都知道,我们只要在浏览器的地址栏中输入url就可以访问自己想要访问的资源了,比例如http://www.baidu.com 但是有些网站你前一阵子还可以访问,但是最近访问的时候发现访问时报404,这时什么原因呢?也许是服务器被开发人员主动的关闭了,也许该网站所提供的资源不符合社会主义核心价值观...

2019-08-20 19:10:17 278

原创 访问者模式,深度解析

相信关于访问者模式的官方说法大家都有看过了,如果没看过就百度,一搜一大把。在此就不再赘述了代码编译结果从本地机器码转变位字节码,是存储格式发展的一小步,却是编程语言发展的一大步。...

2019-08-09 11:27:55 459 1

原创 简答的BIO,NIO,AIO理解

在网上看了很多关于Java IO机制的讲解,其实很难得到一个标准得答案,而且不那么容易吸收,所以,我总结了一些自己关于BIO,NIO,AIO得理解,如有不妥,还望指教。首先,我们需要理解什么是阻塞,什么是非阻塞:阻塞:在访问资源的时候,如果资源准备好了就直接访问,如果资源没有准备好,就阻塞在读取资源的方法上或者别的地方,等待资源准备完成,期间不能做任何别的事情。非阻塞:在...

2019-08-06 12:09:24 126

原创 Mysql事务执行过程与主从复制简单实现原理

一.Mysql的事务执行流程事务开始 对id这行记录上排它所,并给5两边的临界范围添加gap间隙锁,防止插入。 将需要修改的数据PIN到innodb_buffer_cache中; 记录id=5的数据到undo.log中 记录修改id=5的数据到undo.log中 对id=5的记录进行修改。 刷新innodb_buffer_cache中的脏数据到底层磁盘中。 Commit,...

2019-08-01 12:12:40 224

原创 Java线程池

今天我们探究的主要问题就是:什么是线程池?为什么要使用线程池?1.在了解线程池之前,我们先来说一说池化技术:我们身边的池化技术:池化技术其实在我们的身边应用的很多。比如我们的Tomcat使用DBCP作为数据源。我们的JDBC数据库连接池。我们的HttpClient,使用的连接池。我们的J.U.C使用的ThreadPoolExecutor。为什么要用池化...

2019-07-24 12:10:09 125

原创 浅谈CAS

了解了解CAS想必各位对CAS都不会很陌生,都知道CAS(Compare and Swap)是一个原子性操作,经常使用在各种JUC包下的类中。也许你还知道他有三个常见也是重要的参数 —— 内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预测的值相同就更新该内存位置上的值,否则就什么都不做,在自旋中,尝试下一次的更新操作。一.为什么会出现CAS?我们Java不是...

2019-06-30 11:51:04 475

原创 Java线程调度机制

首先,我们来说一下两种不同的线程调度方式:所有的Java虚拟机都有一个线程调度器,用来确定那个时刻运行那个线程。主要包含两种:抢占式线程调度器和协作式线程调度器。1.抢占式线程调度,每个线程可能会有自己的优先级,但是优先及并不意味着高优先级的线程一定会被调度,而是由cup随机的选择,所谓抢占式的线程调度,就是说一个线程在执行自己的任务时,虽然任务还没有执行完,但是cpu会迫使...

2019-06-25 11:54:50 8061 3

原创 Mysql慢查询日志分析环境搭建采坑心得

如果你看到的我的博客,那么我认为你已经了解了mysql慢查询日志的基本操作:1.可以熟练的打开关闭Mysql慢查询日志。2.知道如何设置慢查询日志的存储位置及文件名称。3.了解慢查询日志的存储格式(推荐FILE)4.懂得基本的Sql优化知识。1.我们打开mysql的bin目录也许你们打开bin文件后mysqldumpslow.pl问文件...

2019-06-16 23:18:29 139

原创 死锁,动态死锁,活锁

首先说明一下,这篇博客需要:1.需要有一定锁的基础知识,并且了解简单的锁机制,和死锁的产生原因。2.需要一定的并发知识,及多线程知识。3.以Java为载体好吧,我们废话不多说,这就进入我们今天的主题。熟悉并发编程的朋友应该对"死锁"(DeadLock)这个概念不会陌生,因为在我们的程序设计多个线程,多个锁,多个“竞态”资源的时候,如果处理不得当,就非常容易...

2019-06-14 13:49:53 499

原创 vm ware 改变硬盘(vmdk)的映射位置

最近就很烦,电脑老是动不动就卡死,这让我很不爽,我查看了很多的指标,发现CPU的工作状态和内存的工作状态均属于比较正常,有人告诉我散热,或者除尘,我都小小的试验了一把,感觉都没多大用,这让我及其的不爽,你想想,当你证写着代码,突然电脑卡死了,你估计就想给电脑一锤,哈哈哈。最终我发现,是系统盘的容量问题导致的,我的系统盘是C盘 当它剩余30G左右的时候,就会出现两天一卡死的现象。当剩余1...

2019-05-29 11:28:06 6168 2

原创 你也许不知道的Java多线程知识

我相信大多数人都多多线程有所了解,而我们的Java程序天生就是多线程的程序?为什么这么说呢?下面我就来证明一下为什么Java程序天生就是多线程的程序。 public static void main(String[] args) { //这个ThreadMxBean就是为了获取我们当前程序(你也可以说是进程)当前运行过程中启动的执行的线程数 Threa...

2019-05-28 19:22:34 243

原创 手写JDK动态代理

这里说手写,其实也就是去掉了很多JDK动态代理实现的细节的,只是将核心的思想抽丝剥茧出来,用自己的,简单的方式实现了JDK动态代理。再此我要声明几点:1.该篇博客是需要你对JDK动态代理有一定了解的。2.JDK代理的实现远比此要复杂与精巧。下面,我们就来看看代码与解析:关于下面将干的事情,先罗列在下面这张表中,以便有个大致的认识:关于手写动态代...

2019-05-22 23:01:21 259

原创 再谈Manacher

刚开始写播客的时候比较呆,写过一篇关于Manacher算法的博客,回头望去,感觉条理不是很清晰,虽然代码在运行时不会出现什么大问题,但是,总让我感觉不舒服,所以,今天我就再来写一篇关于Manacher算法的文章。再谈谈对Manacher算法的理解。首先,我这一想法来自于我在leetCode上刷题的时候碰到的“求最长回文数”,一题,但是我采用了中心拓展法求解,获得了成功,但是总感觉做“求最...

2019-05-22 15:53:25 94

原创 LeetCode2.两数相加

源码+注释:class solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { return count(l1,l2); } private ListNode count(ListNode root1,ListNode root2){ List...

2019-05-14 11:34:10 123

原创 高并发下的单例设计模式

熟悉Java的朋友应该对单例设计模式了解的不少,比如我们会发现Spring中默认交给容器管理的对象都是单例的,除非你手动的设置。那么Spring是如何保证容器中的Bean对象只创建一次呢?下面,我们就分析一下单设计及模式与并发碰撞在一起会出现怎样的火花。懒汉模式和饿汉模式得区别:懒汉模式就是懒,不用它就不创建,等到要用的时候才创建(赶晚不赶早)饿汉模式就是饿死鬼,还没到用到得时...

2019-05-06 18:24:50 388

原创 Spring源码分析——容器创建

熟悉Spring的朋友可能都知道,Spring容器,是Spring框架实现其两大核心思想,IOC,AOP的基础,平时我们可能只是会享受容器带给我们的便利,确对容器的了解知之甚少,今天,我们就来通过Spring底层源码来分析Spring容器的构造过程,这将使我们对Spring的认识再上一个台阶,让我们更加了解我们的“对象”。容我再哔哔一句,在我看来:Ioc的实现,可以说一大部分功劳是...

2019-05-02 18:48:27 395

原创 Spring源码分析——AOP

我默认看这篇博客的朋友们大多都已经基本熟练掌握Spring框架,并对Spring的一把利器——AOP(面向切面编程)有一定的了解。所以一些基础的点就一带而过了。1.AOP是什么?AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,是软件开发...

2019-04-28 16:57:26 170

原创 Spring中关于Bean的生命周期相关的内容

为什么要关注Spring容器中Bean的生命周期?因为我们需要依据Bean注册到容器的不同时间点进行拦截或其它一系列操作,使得程序员对控制反转这一过程具有更好的控制力和介入能力。实例化对象在容器中的生命周期如下:上图中,的四个方法,分别在Bean的不同生命周期内执行,其中红色的两个节点分别在Bean的初始化后和销毁前执行,一共有三种实现方式:...

2019-04-22 12:00:11 116

原创 Spring源码解析——向容器中注册Bean对象

首先,我需要说明一下,本篇博客全部采用的是注解的方式向Spring容器中注册Bean对象,至于为什么使用注解,我想大家也应该明白,随着SpringBoot的出现,配置文件的形式已经被逐步取代,后续的SpringCloud在对SpringBoot进行服务治理时,几乎采用全注解的形式,所以注解的重要性也就不言而喻了。Spring是通过IoC容器对Bean进行管理的,而Bean的初始化主要...

2019-04-21 18:06:45 712

原创 No fallbackFactory instance of type...

问题描述:这个问题出现在Spring Cloud 微服务架构之中,我在使用Hystrix断路器实现服务降级的时候出现了这个问题。org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'consumerController': Unsatisfied d...

2019-04-08 12:02:57 16857 16

原创 阿里云的安全防护措施

阿里云阿里云,阿里巴巴集团旗下云计算品牌,全球卓越的云计算技术和服务提供商。创立于2009年,在杭州、北京、硅谷等地设有研发中心和运营机构。当然,这篇博客不是打广告的,我需要说的是,在入手了一个阿里云轻量级服务器,并且在上面部署项目的体会和经验。我是将Java web 项目从windows上部署到ubuntu16.04的阿里云服务器上,在部署过程中,遇到了很多...

2019-03-31 20:29:31 3797

转载 RPC与分布式

如何给老婆解释什么是RPC原文转自:原文链接:https://www.jianshu.com/p/2accc2840a1b一个阳光明媚的早晨,老婆又在翻看我订阅的技术杂志。“老公,什么是RPC呀,为什么你们程序员那么多黑话!”,老婆还是一如既往的好奇。“RPC,就是Remote Procedure Call的简称呀,翻译成中文就是远程过程调用嘛”,我一边看...

2019-03-31 10:28:24 722

原创 SpringBoot集成dubbo,生产者报错ApplicationConfig.application = =null

报错如下:我在遇到这个问题的时候,苦恼了许久,我感觉自己配置的没有问题啊,为什么会出现这个错误呢,在网上搜啊搜也没什么有用的结果,我最终决定换一下 <!--springboot集成dubbo的起步依赖--> <dependency> <groupId>com.alibaba.spring...

2019-03-21 21:39:31 5140 9

转载 怎样在java虚拟机中理解Java并发

声明,本文转自 秋风Haut 原文地址为 https://blog.csdn.net/u012640428/article/details/51902217今天公司的一位技术专家在我们这里聊天,聊完之后我突然对Java并发又多了些许理解。先以Java虚拟机的内存结构开始,在《Java虚拟机规范》中,Java虚拟机被定义为程序计数器、Java栈、本地方法栈、Jav...

2019-03-21 11:25:39 86

原创 MultiCast注册中心Q(Dubbo),消费者启动报错

生产者配置如下:&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmln...

2019-03-17 18:15:54 363

原创 windows平台上的应用远程连接linux服务器上的mysql

面向的问题:windows平台上运行的应该应用程序需要连接,操作运行在Linux平台上的MySql服务。首先我要说明,这不仅仅是SQLyog和运行在liunx平台上的关系,而是运行在windows平台上的程序连接运行在Linux平台上的mysql服务器的关系。测试使用的相关软件版本:Ubuntu 16.04Mysql 5.6...

2019-03-11 23:27:07 847 1

原创 SpirngBoot从application.properties文件中读取参数时出现中文乱码问题

1.本人的测试环境时IDEA+jdk8第一种中文乱码的:点击左上角的file-&gt;settings点开,看到图点击Editor看到下图在运行一遍程序,一般就可以解决中文乱码问题了2.如果依然出现中文乱码(本人在使用@ConfigrationProperties读取配置参数时出现了该类情况),这时不要犹豫,直接删除你的applic...

2019-03-11 17:28:26 1031

原创 Java线程锁——深入理解Java虚拟机

 高效并发是从JDK1.5到1.6的一个重要改进,HotSpot虚拟机开发团对在这个版本上花费了大量精力去实现各种锁优化技术,如适应性自旋,锁消除,锁粗化,轻量级锁和偏向锁等,这些技术都是为了在线程之间更高效的共享数据,以及解决竞争问题,从而提高程序的执行效率。  一.自选锁与自适应自旋 前面我们讨论互斥同步的时候,提到了互斥同步对性能最大的影响是阻塞的实现,挂起线程和恢复...

2019-02-24 21:53:08 219

原创 Tomcat启动报错 java.lang.ClassNotFoundException: org.apache.jsp.index_jsp

我用的是Maven+mybaits+Spring3+SpringMVC3+tomcat7.0.2构建的web项目,在解决了一系列问题后最终碰到了org.apache.jsp.index_jsp这个问题,我上网查了好长时间,主要的说法有以下三种: 1.检查你的项目中是否存在jsp-api.jar,jstl-api.jar,servlet-api.jar。2.web.xml文件配置错...

2019-02-21 00:08:57 11681 9

原创 Java线程安全——深入理解Java虚拟机

 什么是线程安全? 第一种比较常见但很鸡肋的说法是:如果一个对象可以安全的被多个线程同时使用,那它就是线程安全的。第二种比较专业的说法是:当多个线程访问一个对象时,如果不考虑这些线程在运行时环境下的调度和交替执行,也不需要做额外的同步,或者调用方法进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那这个线程就是安全的。  一.Java语言中的线程安...

2019-02-19 22:03:02 292

原创 Java线程——深入理解Java虚拟机

并发不一定要依赖线程(如PHP中很常见的多进程并发),但是在Java里面谈论并发,大多数都与线程脱不了关系。  一.线程的实现 我们知道,线程是比进程更轻量级的调度单位,线程的引入,可以把一个进程的资源分配和执行调度分开,各个线程既可以共享进程资源,又可以独立的调度。  主流的操作系统都提供了多线程的实现,Java语言则提供了不同硬件和操作系统平台下对线程操作的统...

2019-02-17 22:07:43 174

原创 数据库事务

 一.事务四大特性: 原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么去不完成,要么均不执行。 一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果一致。 隔离性(Isolation):事务的执行不受其它事务的干扰,事务执行的中间结果对其他事务必须是透明的。 持久性(Durability):对于任意已提交事务,...

2019-02-17 18:19:04 215

原创 Java内存模型——深入理解Java虚拟机

 Java虚拟机规范中试图定义一种Java内存模型来频闭掉各种硬件系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致性的内存访问效果。  一.主内存与工作内存 Java内存模型主要目标是定义程序中各个变量的访问规则,即在虚拟机种将变量储存到内存和从内存中取出变量这样的底层细节。 Java内存模型:Java内存模型规定了所有的变量都存储在主内存中,与...

2019-02-16 22:22:39 186

原创 硬件的效率与一致性——深入理解Java虚拟机

由于计算机的存储设备与处理器的运算速度有几个数量级的差距,所以现代计算机系统都不得不加入一层读写速度尽可能接近处理器运算速度的告诉缓存来作为内存与处理器之间的缓存: 将运算需要使用的数据复制到缓存中,让运算能快速进行,当运算结束后再从缓存中同步回内存之中,这样处理器就无需等待缓慢的内存读写了。  基于告诉缓存的存储交互很好的解决了处理器与内存的速度矛盾,但是也为计算机系带来了更...

2019-02-16 22:08:27 150

原创 编译优化技术——深入理解Java虚拟机

 编译优化技术  Java程序员有一个共识以编译方式执行本地代码比解释方式更快,值所以有这样的共识,除去虚拟机解释执行字节码时额外消耗时间的原因外,还有一个很重要的原因就是虚拟机设计团队几乎把所有对代码的优化措施都集中在了即时编译器,因此一般来说,即时编译器产生本地代码会比Javac产生的字节码更优秀。  接下来,我们来看看几种具有代表性优化技术是如何运行的。 ...

2019-02-14 22:28:28 166

原创 运行期优化——深入理解Java虚拟机

解析与即时编译共存:在部分的商用虚拟机(Sun HotSpot,IBM J9)中,Java程序最初时通过解析器进行解析执行的,当虚拟机发现某个方法或者代码块的运行特别频繁时,就会把这些代码认定为“热点代码”(Hot Spot Code)。为提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成本地平台相关的机器码,并进行各层次的优化,完成这个任务的编译器称为即时编译器(Just In T...

2019-02-13 22:45:10 172

原创 Java语法糖——深入理解Java虚拟机

 几乎各种语言或多或少都提供过一些语法糖来方便程序员的代码开发,这些语法糖虽然不会提供实质性的功能改进,但是它们货能提高效率,或能提升语法的严谨性,或能减少编码出错的机会。  一.泛型与类型擦除 泛型是JDK1.5的一项新增功能,它本质上是参数类型化的应用,也就是说操作的数据类型被指定为一个参数。这种参数类型可以用在类,接口和方法的创建种,分别称为泛型类,泛型接口,泛型方法...

2019-02-12 22:42:52 173

SpringCloud思维导图+笔记.mmap

SpringCloud思维导图+笔记.mmap

2019-06-26

北京动力节点_SpringBoot课程1.5x.xmind

北京动力节点_SpringBoot课程1.5x.xmind

2019-06-26

Spring注解驱动开发.xmind

Spring注解驱动开发.xmind

2019-06-26

空空如也

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

TA关注的人

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