上一页 1 2 3 4 5 6 7 8 9 10 ··· 26 下一页
摘要: 一.概述定义:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型。类加载和连接的过程都是在运行期间完成的。二. 类的加载方式1):本地编译好的class中直接加载2):网络加载:java.net.URLClassLoader... 阅读全文
posted @ 2014-10-22 10:25 李克华 阅读(764) 评论(0) 推荐(0) 编辑
摘要: 大部分内容来源网络,整理一下,留个底。问:堆和栈有什么区别?答:堆是存放对象的,但是对象内的临时变量是存在栈内存中,如例子中的methodVar是在运行期存放到栈中的。 栈是跟随线程的,有线程就有栈,堆是跟随JVM的,有JVM就有堆内存。问: 堆内存中到底存在着什么东西?答:对象,包括对象变量以及对... 阅读全文
posted @ 2014-10-22 10:12 李克华 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 1.“开-闭”原则(OCP) Software entities should be open for extension, but closed for modification. 对扩展开放,对修改封闭。2.里氏代换原则(LSP) 凡是基类适用的地方,子类一定适用。3.依赖倒转原则(DIP) 要... 阅读全文
posted @ 2014-10-22 10:10 李克华 阅读(1568) 评论(1) 推荐(0) 编辑
摘要: Java虚拟机管理的内存包括以下几个运行时数据区域:1.程序计数器: 程序计数器是一块比较小的内存空间,是当前线程执行的字节码行号指示器。Java多线程是通过线程轮流切换来实现的,所以每个线程都有一个自己独立的程序计数器,各个线程的程序计数器互补干扰。2.Java虚拟机栈 Java虚拟机栈描述的... 阅读全文
posted @ 2014-10-22 10:09 李克华 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 类从加载到虚拟机到卸载,它的整个生命周期包括:加载(Loading),验证(Validation),准备(Preparation),解析(Resolution),初始化(Initialization),使用(Using)和卸载(Unloading)。其中,验证、准备和解析部分被称为连接(Linkin... 阅读全文
posted @ 2014-10-22 10:08 李克华 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 在说垃圾回收算法之前,先谈谈JVM怎样确定哪些对象是“垃圾”。1.引用计数器算法:引用计数器算法是给每个对象设置一个计数器,当有地方引用这个对象的时候,计数器+1,当引用失效的时候,计数器-1,当计数器为0的时候,JVM就认为对象不再被使用,是“垃圾”了。引用计数器实现简单,效率高;但是不能解决循环... 阅读全文
posted @ 2014-10-22 10:07 李克华 阅读(1949) 评论(1) 推荐(0) 编辑
摘要: 前几天做了个Memcached的思考,并测试了一些数据,是关于如何提高Memcached内存使用率的问题。在启动memcached的时候可以加-f参数和-n参数。-f指定各slab里面chunk大小的变化比例,默认1.25,-n指定slab里面chunk大小从多少开始。使用memcache_add(... 阅读全文
posted @ 2014-10-17 17:58 李克华 阅读(932) 评论(0) 推荐(0) 编辑
摘要: 因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果。所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正。配置优化zookeeper.session.timeout 默认值:3分钟(180000ms) 说明:RegionS... 阅读全文
posted @ 2014-10-17 17:52 李克华 阅读(689) 评论(0) 推荐(1) 编辑
摘要: 分析JAVA Application的内存使用时,jmap是一个很实用的轻量级工具。使用jmap可以查看heap空间的概要情况,粗略的掌握heap的使用情况。也可以生成heapdump文件,再使用jhat通过web浏览器具体分析内容中的对象和数据。jmap是JDK自带的一个工具,非常小巧方便,其支持... 阅读全文
posted @ 2014-10-15 10:06 李克华 阅读(13629) 评论(0) 推荐(2) 编辑
摘要: 集合类是Java API的核心,但是我觉得要用好它们是一种艺术。我总结了一些个人的经验,譬如使用ArrayList能够提高性能,而不再需要过时的Vector了,等等。JDK 1.5引入了一些好用的并发集合类,它们对于大型的、要求低延迟的电子商务系统来说非常的有用。这篇文章中将会看看Concurren... 阅读全文
posted @ 2014-10-14 20:09 李克华 阅读(2827) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 26 下一页