- 博客(17)
- 收藏
- 关注
原创 容器环境minor gc异常频繁分析
这里写自定义目录标题1. 问题现场2. 问题分析2.1 频繁minor gc带来的影响2.2 GC日志分析The Young Generation2.3 `ParallelGCThreads`分析3. 问题解决4. 附录4.1 动态对象年龄判定4.2 usr, sys, real含义1. 问题现场近日,通过IMP监控发现,生产的容器环境gc很频繁-约40s一次,且都是minor gc,具体的gc日志如下:的形式来遍历Collection和Array,那么遍历的顺序是怎么样的呢? 一般,我们使用如下的形式来使用foreach的功能:for(var x : expression) statement上述代码的语义基本如是:x是变量,expression是需要遍历的Collection...
2018-03-21 21:28:05
15504
1
原创 Treiber Stack
Treiber Stack是基于CAS实现的无锁竞争的线程安全stack,jdk8的FutureTask也通过一个简单的Treiber Stack来维护等待线程。以下是具体的Treiber Stack的java实现:public class TreiberStack<E> { AtomicReference<Node<E>> top = new AtomicReference<>();
2017-10-25 11:33:35
500
原创 基于jdk8的格式化时间方法
背景jdk8之前,java使用Date表示时间,在做时间的格式化时,通常使用SimpleDateFormat,但是SimpleDateFormat是非线程安全的,在写代码时通常要将之定义为局部变量或者使用ThreadLocal包装; 第三方库joda-time封装了很多对时间的处理方法,可以作为jdk7及其之前的标准时间处理库。
2017-10-20 15:47:42
19203
1
原创 java类加载器
类加载器java虚拟机代码存储在.class结尾的类文件当中,但是运行程序的机器并不能识别class文件,这就需要一种机制将class文件解释为机器能够识别的代码,这就是类加载器类加载器的分类类加载器分为以下三类: - BootStrap ClassLoader(引导类加载器或者叫启动类加载器) - ExtClassLoader(扩展类加载器) - AppClassLoader(系统类加载器或
2017-09-21 16:40:53
262
原创 读写锁ReentrantReadWriteLock锁降级
读写锁ReentrantReadWriteLock简介ReentrantReadWriteLock是ReadWriteLock接口的实现,ReentrantReadWriteLock中有两个静态内部类:ReadLock读锁和WriteLock写锁,这两个锁实现了Lock接口,ReentrantReadWriteLock支持可重入,同步功能依赖自定义同步器(AbstractQueuedSynchron
2017-07-06 11:29:49
641
原创 Gson,FastJson, Jackson测试
Gson是google开源的json序列化和反序列化工具,拥趸众多;FastJson是阿里巴巴开源的json工具,国产高品质;而 Jackson是老牌的json工具,spring的默认json转化就使用jackson。 json作为当前序列化最重要的形式之一,经常应用在各个项目中,而选择一种好的序列化工具当然就很重要,因此,我简单对这三种json工具进行了测试,测试使用Junit 4,分别对一个简单
2017-06-02 11:25:18
546
原创 全局唯一订单号生成方法(参考snowflake)
全局唯一订单号生成方法(参考snowflake)Snowflake is a network service for generating unique ID numbers at high scale with some simple guarantees.简介对于一个较大的订购业务场景,我们往往需要能够生成一个全局的唯一的订单号,如何在多个集群,多个节点高效生成唯一订单号?我们参考了Twitte
2016-07-22 17:40:48
22001
2
原创 zookeeper 集群安装
参考zookeeper主页:https://zookeeper.apache.org/zookeeper下载页面:http://www.apache.org/dyn/closer.cgi/zookeeper/选择清华的镜像下载;选择目前的stable版本 3.4.8本次安装机器为172.23.28.51/52/531.下载wget https://mir
2016-07-09 09:24:48
496
原创 mybatis工作原理1---sqlsession
声明:本文参考mybatis官方中文文档http://mybatis.github.io/mybatis-3/zh/index.html,转载请注明出处。mybatis 版本为3.2.8,测试工具junit版本为4.12,eclipse simple maven工程,具体的dependency如下: org.mybatis mybatis 3.2.8
2015-04-08 17:00:28
1683
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅