jvm
文章平均质量分 90
微甜灬呼吸
noob ~~
展开
-
三种GC大揭秘
/*** 转载请注明作者longdick http://longdick.iteye.com**/ (本文基于JDK6) 说到GC,首先要对Java 的内存模型有所了解。Java 的内存模型各个代的默认排列有如下图(适用JDK1.4.* 到 JDK6):Java 的内存模型分为Young(年轻转载 2015-08-30 12:35:46 · 467 阅读 · 0 评论 -
Difference Between ClassNotFoundException Vs NoClassDefFoundError In Java
In Java, both ClassNotFoundException and NoClassDefFoundError occur when a particular class is not found at run time. But, they occur at different scenarios.ClassNotFoundException is an exception转载 2015-10-15 14:41:02 · 443 阅读 · 0 评论 -
你的Java代码对JIT编译友好么?
JIT编译器是Java虚拟机(以下简称JVM)中效率最高并且最重要的组成部分之一。但是很多的程序并没有充分利用JIT的高性能优化能力,很多开发者甚至也并不清楚他们的程序有效利用JIT的程度。在本文中,我们将介绍一些简单的方法来验证你的程序是否对JIT友好。这里我们并不打算覆盖诸如JIT编译器工作原理这些细节。只是提供一些简单基础的检测和方法来帮助你的代码对JIT友好,进而得到优转载 2015-09-06 17:10:39 · 880 阅读 · 0 评论 -
Java分布式事务-转载
Java分布式原理和应用:http://nesta2001zhang.iteye.com/blog/1146509JTA( Java Transaction API)允许应用 程序 执行分布式事务处理--在两个或多个 网络 计算机资源上访问并且更新数据。JDBC 驱动 程序的JTA支持极大地增强了数据访问能力。本文的目的是要提供一个关于的Java事务处理API(JTA)的高级转载 2015-09-10 13:30:02 · 719 阅读 · 0 评论 -
JVM性能优化,Java的伸缩性
很多程序员在解决JVM性能问题的时候,花开了很多时间去调优应用程序级别的性能瓶颈,当你读完这本系列文章之后你会发现我可能更加系统地看待这类的问题。我说过JVM的自身技术限制了Java企业级应用的伸缩性。首先我们先列举一些主导因素。l 主流的硬件服务器提供了大量的内存l 分布式系统有大量内存的需求,而且该需求在持续增长l 一个普通Java应用程序所持有的对空间大概在1G转载 2015-08-30 12:42:56 · 356 阅读 · 0 评论 -
线程讲解
Java线程:概念与原理 一、操作系统中线程和进程的概念 现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。 线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.转载 2015-08-30 12:26:21 · 664 阅读 · 0 评论 -
一个性能较好的JVM参数配置
一个性能较好的web服务器jvm参数配置:-server//服务器模式-Xmx2g //JVM最大允许分配的堆内存,按需分配-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存。-Xmn256m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代-XX:PermSize=128m //持久代内存大小-Xss2转载 2015-08-30 12:40:59 · 313 阅读 · 0 评论 -
JVM内存配置详解
前段时间在一个项目的性能测试中又发生了一次OOM(Out of swap sapce),情形和以前网店版的那次差不多,比上次更奇怪的是,此次搞了几天之后啥都没调整系统就自动好了,死活没法再重现之前的OOM了!问题虽然蹊跷,但也趁此机会再次对JVM堆模型、GC垃圾算法等进行了一次系统梳理; 基本概念 堆/Heap JVM管理的内存叫堆;在32Bit操作系统上有4G的限制,一般来说Wi转载 2015-08-30 12:37:32 · 370 阅读 · 0 评论 -
Java 自定义实现 LRU 缓存算法
背景LinkedHashMap继承自HashMap,内部提供了一个removeEldestEntry方法,该方法正是实现LRU策略的关键所在, 且HashMap内部专门为LinkedHashMap提供了3个专用回调方法,afterNodeAccess、 afterNodeInsertion、afterNodeRemoval,这3个方法的字面意思非常容易理解,就是节点访问后、节点插入后、节点转载 2015-08-30 12:41:32 · 455 阅读 · 0 评论 -
图解JVM内存模型
/*** 转载请注明作者longdick http://longdick.iteye.com**/ Java 的内存模型由3个代组成,各个代的默认排列有如下图(适用JDK1.4.* 到 JDK6):Java 的内存模型分为Young(年轻代)Tenured(终身代)Perm(永久代)转载 2015-08-30 12:36:18 · 249 阅读 · 0 评论 -
高吞吐低延迟Java应用的垃圾回收优化
高性能应用构成了现代网络的支柱。LinkedIn有许多内部高吞吐量服务来满足每秒数千次的用户请求。要优化用户体验,低延迟地响应这些请求非常重要。比如说,用户经常用到的一个功能是了解动态信息——不断更新的专业活动和内容的列表。动态信息在LinkedIn随处可见,包括公司页面,学校页面 以及最重要的主页。基础动态信息数据平台为我们的经济图谱(会员,公司,群组等等)中各种实体的更新建立索引,它必转载 2015-08-30 12:39:49 · 278 阅读 · 0 评论 -
Linux与JVM的内存关系分析
引言在一些物理内存为8g的服务器上,主要运行一个Java服务,系统内存分配如下:Java服务的JVM堆大小设置为6g,一个监控进程占用大约600m,Linux自身使用大约800m。从表面上,物理内存应该是足够使用的;但实际运行的情况是,会发生大量使用SWAP(说明物理内存不够使用了),如下图所示。同时,由于SWAP和GC同时发生会致使JVM严重卡顿,所以我们要追问:内存究竟去哪儿了?转载 2015-08-30 12:39:14 · 516 阅读 · 0 评论 -
Java日志终极指南
Java日志基础Java使用了一种自定义的、可扩展的方法来输出日志。虽然Java通过java.util.logging包提供了一套基本的日志处理API,但你可以很轻松的使用一种或者多种其它日志解决方案。这些解决方案尽管使用不同的方法来创建日志数据,但它们的最终目标是一样的,即将日志从你的应用程序输出到目标地址。在这一节中,我们会探索Java日志背后的原理,并说明如何通过日志来让你成转载 2015-08-30 12:42:10 · 774 阅读 · 0 评论 -
Java 8 中所有的包列表及介绍
了解了Java 8中所有包的作用,对Java 8有了一个整体的了解,另外也是提高了自身的阅读能力。本文列出了Java 8中所有的包,并且对每一个包的功能做了简要的说明,希望对你有所帮助。—————————————————–Java平台,标准版第八版API规范java.applet提供了需要创建一个小程序和用来跟其他小程序交流上下文的类。jav转载 2015-08-30 12:40:22 · 1584 阅读 · 0 评论 -
JVM系列三:JVM参数设置、分析
不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同转载 2015-08-30 12:38:24 · 322 阅读 · 0 评论 -
图解JVM在内存中申请对象及垃圾回收流程
先看一下JVM的内存模型: 从大的方面来讲,JVM的内存模型分为两大块: 永久区内存( Permanent space )和堆内存(heap space)。 栈内存(stack space)一般都不归在JVM内存模型中,因为栈内存属于线程级别。每个线程都有个独立的栈内存空间。 Permanent sp转载 2015-08-30 12:36:51 · 247 阅读 · 0 评论 -
java内存泄漏的定位与分析
1、为什么会发生内存泄漏Java 如何检测内在泄漏呢?我们需要一些工具进行检测,并发现内存泄漏问题,不然很容易发生down机问题。编写java程序最为方便的地方就是我们不需要管理内存的分配和释放,一切由jvm来进行处理,当java对象不再被应用时,等到堆内存不够用时,jvm会进行垃圾回收,清除这些对象占用的堆内存空间,如果对象一直被应用,jvm无法对其进行回收,创建新的对象时,无法转载 2016-05-06 11:20:31 · 472 阅读 · 0 评论