JDK类加载机制

· JVM

jdk的类加载机制 类加载的过程 类加载主要分为: 加载 -> 验证 -> 准备 -> 解析 -> 初始化 加载 加载的主要作用是将外部的 .class 文件,加载到 Java 的方法区内 验证 验证class文件,是否符合jvm虚拟机的规范 准备 类变量分配内存,并将其初始化为默认值 类变量在准备阶段就进行了初始化,但是在方法内部定义的变量不会...

Read More →
#类加载

JVM问题排查思路

· JVM

JVM问题排查思路 GC log 启动脚本 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintTenuringDistribution -Xloggc:/tmp/logs/gc_%p.log -XX:+HeapDumpOnOutOfMemoryE...

Read More →
#jvm

深入学习Java线程池

· 文章收藏

深入学习Java线程池 转载自: 原文链接: stackify 翻译: ImportNew.com - 一杯哈希不加盐 译文链接: http://www.importnew.com/29212.html 导语 线程池是多线程编程中的核心概念,简单来说就是一组可以执行任务的空闲线程。 首先,我们了解一下多线程框架模型,明白为什么需要线程池。 线程是在一个进程中可以执行一...

Read More →
#线程池

Zookeeper的相关思考

· 杂记

Zookeeper的相关思考 相信大部分同学第一次接触到ZooKeeper(后文中简称为zk)都是和Dubbo一起接触到的,在Dubbo开源时将阿里内部的注册中心进行剥离,用zk作为服务发现的注册中心进行使用的。在大规模的微服务化一段时间后,有越来越多的声音提醒我们zk并不适用于作为服务发现的注册中心进行使用。从下面三个问题出发,探寻一下zk为什么不适用作为注册中心。 zk是什么,以及由来和想要...

Read More →
#Zookeeper

JUC之AQS分析

· 文章收藏

JUC之AQS分析 转载自:【死磕Java并发】—–J.U.C之AQS 讲述AQS(AbstractQueuedSynchronizer)的核心代码的文章,AQS的文章可参考对AQS的分析一文 AQS简介 java的内置锁一直都是备受争议的,在JDK 1.6之前,synchronized这个重量级锁其性能一直都是较为低下,虽然在1.6后,进行大量的锁优化策略,但是与Lock相比synchron...

Read More →
#J.U.C