自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 JVM虚拟机学习笔记

一、背景   先来一段官方的语言:java虚拟机是java运行的必不可少的平台,java所谓的号称跨平台,都是基于这个JVM来进行二、JVM体系结构三、总结

2018-06-21 11:14:22 151

原创 Java的类加载学习笔记

      最近总是被类加载器搞混,于是下决心好好的去看一下,总结一下类加载器的内容,之前也看过很多博客,但是没有总结过,也没有细细的去看过,隔一段时间,好像又忘记了,趁着这次机会,好好学习一下,自己总结一下,这样也能加深对类加载器的理解,有不对的地方,请大家指正,当然网上有非常的多的博客可以参考,有的写的也非常的好,这里只是一个学习笔记。   一、java的类加载器     类加载器其实是将ja...

2018-06-13 14:22:00 107

原创 反向代理服务器tengine学习小记

一、背景

2018-05-30 22:29:02 760

原创 kafka客户端Producer和Consumer关于自定义消息序列和反序列

一、背景    最近在学习kafka相关的知识,正好遇到一个疑问,在写demo的过程中发现,投递的数据都是字符串类型,那么就想想在实际应用中应该会有大量的需求投递自定义数据类型,那么如何才能投递自定义数据类型呢?这里面就涉及到了kafka提供的接口序列化和反序列化的功能。二、kafka消息序列化和反序列化先看个demo,写个Producer客户端,根据官方文档,需要先做一些配置,放到Propert...

2018-05-29 20:39:20 3318

原创 关于MAC下面 PKIX:unable to find valid certification path to requested target解决方法

一、背景    最近在测试某个功能的时候,因为需要调用很多第三方的接口,是在太麻烦,而且要去线上环境,这就更加的困难了,于是想着写一个工具,自己去本地去调用这些接口,但是很不巧,遇到要给证书的问题,网上搜索了一大堆的解决方案,原因是确定的,就是缺少证书,但是怎么搞都不行,最后终于解决了,这里写个解决过程。二、解决过程   首先,我的mac环境是通过sdk安装的,不知道是不是这个原因,出现过很多问题...

2018-05-11 10:48:48 3601 8

原创 JDK1.8源码学习篇三——读写锁ReentrantReadWriteLock学习笔记

一、引言    之前学习了java锁的相关概念,从最开始的大家使用是synchronized关键字,这个重量级锁,性能非常的低下,但是在jdk1.6之后经过优化之后, 性能大幅提升。但是在jdk1.5上新增加的锁lock性能和功能都大幅提升,被大家广泛采用。在上一篇文章中也学习了关于同步的一些基础构建AQS,同时在此基础上也学习了一下java同步中常用到的独占锁ReentrantLock的源码,从...

2018-04-17 21:08:54 473

原创 JDK1.8源码学习篇二——ReentrantLock学习笔记

一、 引言    上一篇写了AQS的主要方法和原来,也是为学习ReentrantLock做准备的,在一开始的学习的ReentrantLock的锁的时候,发现大部分的方法都是在AQS中,索性干脆就对AQS单独写个学习笔记,有了上面的基础之后,再来看ReentrantLock的源码,应该会简单很多。二、JAVA的锁机制   1. 在jdk的低版本中主要使用Synchronized关键字来获取,这个是一...

2018-04-06 14:37:01 331

原创 JDK1.8源码学习篇一——AbstractQueuedSynchronizer学习笔记

一、引言      最近想深入学习一下java并发的基础知识,总感觉在对java.util.concurrent一知半解,很多东西好像只有点印象,这次接着学习源码的机会来深入了解一下。那么为什么把AbstractQueuedSynchronizer这个类放在最前面呢?其实相信很多人跟我有同样的经历,首先学习的是ExecuteService线程池,然后学习里面的工厂类Executors,和其中的su...

2018-04-05 17:27:14 319

原创 linux运维笔记----使用yum安装常见问题小结

一、背景     最近因为工作需要,需要部署一个海外站点,由于自己对linux也是个半调子水平,所以这个过程中遇到很多"奇奇怪怪"的异常,当然所有的事情必定是事出有因。大部分的问题都是卡在环境的问题上,各种配置啥的,反正很糟心。因此这里对这方面的遇到的报错以及过程做一个简单的小结,本次出现的一系列的问题都是一个小的导火索导致的---安装jdk1.8失败,然后就引出了很多问题。二、过程   1. 首...

2018-03-06 22:23:32 2311

原创 spring boot 搭建web项目完整流程,以及遇到的一些坑坑洼洼总结

一、spring boot简介     spring boot是最近非常流行的,在spring的框架上改进的框架。该框架的目的是为了提高开发人员的速度,降低配置的难度等等,极大了简化了开发流程。具体的详细的说明请参考官方文档。在日常工作中,由于需要搭建一套环境或者框架的机会非常的少,大部分都是在原有的基础上开发,所以当让你搭建一个简单的框架,就会出现各种各样的困难,比如说,我在搭建的一个服务器的时...

2018-03-01 19:24:18 138314 16

原创 AOP编程学习笔记之----Spring AOP编程小记

一、概述      上一篇总结了一下在学习AOP过程中,运用到的动态代理技术以及java的反射技术,这是在AOP中最常见的遇到的一些技术,接下来,正式学习AOP编程,这篇博客,意图对AOP学习中遇到的一些问题进行简单化,方便理解AOP的原理。     首先来说一下为什么要用AOP编程呢,这样编程有什么好处呢?在实际处理业务的过程中,一般遵循的要求是把对应的业务代码写在同一个类中,或者同一个包下面。...

2018-02-28 15:45:36 230 1

原创 AOP编程学习笔记之----JDK动态代理技术

一、概述     AOP编程,简称面向切面的编程,是spring框架的一个重要特征,也是日常编程中常用的编程方式,本次冲着对spring打破砂锅问到底的心里,决心弄懂工作中经常出现的一些编程方式和知识点,以前都是在这字面上大大擦边球,希望通过这次学习的机会,把相应的笔记写下来,能够更深一层的了解这些原理,背后的逻辑。在这里介绍AOP的相关概念之前,我们先介绍一种AOP中非常重要的技术:JDK的动态...

2018-02-11 17:19:40 169

原创 关于开源工具Sqoop源码解读----Mysql字符串作为主键主键分片

最近在做Mysql的数据库的迁移的过程中遇到一个问题,如果用户建的表的主键是字符串,这就导致了一个非常头痛的问题,如果对整张表进行分片?均匀的分片,有人说采用limit轮询的方式查,但是这种效率太差,比如说几十亿的表,几百亿的表,要查出所有的boundary也是个非常头痛的事情....偶尔看到Appache有个类似的开源工具Sqoop,专门用来进行数据迁移,支持关系型数据库mysql,orac

2018-01-20 22:06:05 1120 1

原创 关于一次mysql的列属性not null的坑爹排查

背景:       先说下背景情况,最近在工作中遇到了一个坑爹的事情,有个数据从A库到B库之后,某个字段数据不一致,原来的数据是值null,到新库之后变成了‘’, 这就奇怪了?于是查看了一下表结构,在A库源库的表结构的定义为了 xxx  varchar(32) default null ,而在目标库的表结构为 xxx varchar(32) not null default ''类型,按理说如

2017-11-15 11:01:15 4184 1

原创 spring-boot初学者:记一次搭建web项目404的错误排查过程

test

2017-11-08 11:47:46 7905 1

原创 MongoDB全量迁移断点续传功能学习与实现

1.    背景       MongoDB是一个基于分布式文件存储的开源数据库系统,用户存储文本数据。MongoDB提供了一个面向文档的存储,操作起来比较简单容易,查询速度快等特点。数据迁移是数据库工作中经常见到的一个场景,比如扩容、备份、上云等需求,数据迁移包括全量迁移和增量迁移。在全量迁移的过程中,为了追求速度,提高迁移效率,通常使用高并发的方式,这种并发通常是行级别,而在迁移的过程中,

2017-10-02 11:15:53 1435

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