Welcome 微信登录

首页 / 软件开发 / JAVA

JVM调优总结(十)-调优方法

JVM调优总结(十)-调优方法

JVM调优总结(十)-调优方法2012-06-19 iteye 和你在一起JVM调优工具Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。如何调优观察内存释放情况、集合类检查、对象树上面这些调...
JVM调优总结(十一)-反思

JVM调优总结(十一)-反思

JVM调优总结(十一)-反思2012-06-19 iteye 和你在一起垃圾回收的悖论所谓“成也萧何败萧何”。Java的垃圾回收确实带来了很多好处,为开发带来了便利。但是在一些高性能、高并发的情况下,垃圾回收 确成为了制约Java应用的瓶颈。目前JDK的垃圾回收算法,始终无法解决垃圾回收时的暂停问题,因为这个暂停严重影响了程序的相应时间 ,造成拥塞或堆积。这也是后续JDK增加G1算法的一个重要原因。当然,上面是从技术角度出发解决垃圾...
Java多线程基础总结一: synchronized(1)

Java多线程基础总结一: synchronized(1)

Java多线程基础总结一: synchronized(1)2012-06-21 iteye ftj20003最近写关于并发的小应用,才发现真的该好好的正视java的多线程了。之前没有深入的掌握,用起来也是那么的吃力。作为J2SE里面为 数不多的重要难点之一,多线程应用一直是我以敬畏的心态去尽量避开的,只是通过一些实例掌握一些简单的应用。这段时间会多用点时间 去掌握,有需要写下来的我也会通过这种方式既分享又加深理解。首先这篇只涉及基础的知识整理,对于并发包j...
Java多线程基础总结二: Thread

Java多线程基础总结二: Thread

Java多线程基础总结二: Thread2012-06-21 iteye ftj20003对于Thread来说只想说两个方法,一个是setDaemon(false|true),另一个是join()。首先说说守护线程,这么东西是干什么用的?对于 Java应用我们都知道main方法是入口,它的运行代表着主线程开始工作了,我们也知道JVM里面有垃圾回收器的存在使得我们放心让main飞 奔,然而这背后的故事是垃圾回收线程作为守护着主线程的守护线程默默的付出着。很像...
Java多线程基础总结三: volatile

Java多线程基础总结三: volatile

Java多线程基础总结三: volatile2012-06-21 iteye ftj20003前面的两篇总结简单的说明了同步的一些问题,在使用基础的同步机制中还有两个可以分享的技术:volatile关键字和ThreadLocal。合 理的根据场景利用这些技术,可以有效的提高并发的性能,下面尝试结合自己的理解叙述这部分的内容,应该会有理解的偏差,我也会尽量 的在完善自己理解的同时同步更新文章的错误。或许在知道synchronized配和对象内部锁的机制以后,...
Java多线程基础总结四:ThreadLocal

Java多线程基础总结四:ThreadLocal

Java多线程基础总结四:ThreadLocal2012-06-23 iteye ftj20003说到ThreadLocal,首先说说这个类的命名。直观上看好像是个Thread的什么亲戚,但其实它想表达的意思是线程本地变量,也就是说每 个线程自己的变量。它作为一个JDK5以后支持范型的类,主要是想利用范型把非线程安全的共享变量,封装成绑定线程的安全不共享变量。 这样的解释我想我们多半能猜出它的实现思路:把一个共享变量在每个线程使用时,初始化一个副本,并且和...
Java多线程基础总结五:atomic

Java多线程基础总结五:atomic

Java多线程基础总结五:atomic2012-06-23 iteye ftj20003在简单介绍java.util.concurrent.atomic包之前,有个概念要先抄袭熟悉一遍:CAS(比较并交换)。现在大多数的处理器都提供对并发 访问的支持,这个支持的反映方式就是提供硬件的指令支持多处理的特殊需求。比如检测或者阻止其它处理器的并发访问来更新共享变量的 指令。对于 Intel x86架构的处理器来说就是通过提供实现CAS或者比较并设置的硬件原语指令...
Java多线程基础总结七:ReentrantLock

Java多线程基础总结七:ReentrantLock

Java多线程基础总结七:ReentrantLock2012-06-25 iteye ftj20003之前总结了部分无锁机制的多线程基础,理想的状态当然是利用无锁同步解决多线程程序设计的问题。但是实际碰到的问题使得很多情 况下,我们不得不借助锁同步来保证线程安全。自从JDK5开始,有两种机制来屏蔽代码块在并行访问的干扰,synchronized关键字已经介绍 过了部分内容,所以这次简单的说说另一种锁机制:ReentrantLock。对于synchroniz...
Java多线程基础总结八:ReentrantReadWriteLock

Java多线程基础总结八:ReentrantReadWriteLock

Java多线程基础总结八:ReentrantReadWriteLock2012-06-25 iteye ftj20003说到ReentrantReadWriteLock,首先要做的是与ReentrantLock划清界限。它和后者都是单独的实现,彼此之间没有继承或实现的关系。 然后就是总结这个锁机制的特性了:(a).重入方面其内部的WriteLock可以获取ReadLock,但是反过来ReadLock想要获得WriteLock则永远都不要想。(b).Writ...
Java多线程基础总结九:Mina窥探(1)

Java多线程基础总结九:Mina窥探(1)

Java多线程基础总结九:Mina窥探(1)2012-06-25 iteye ftj20003一直以来的多线程的基础总结都是脱离应用的,但是要说多线程的应用就不能不说Mina。Apache Mina作为一个高性能的Java异步并发网 络通讯框架,其内部的多线程的设计和实现可谓是学习多线程的良药。手上的Mina源码是svn剪下来的最新的代码,mvn转化成eclipse项目 后导入mina-core的源码看看多线程的应用吧。首先简单的介绍在org.apache...
Tomcat系统架构与设计模式,第1部分: 工作原理

Tomcat系统架构与设计模式,第1部分: 工作原理

Tomcat系统架构与设计模式,第1部分: 工作原理2012-06-27 IBM 许令波本文以 Tomcat 5 为基础,也兼顾最新的 Tomcat 6 和 Tomcat 4。Tomcat 的基本设计思路和架构是具有一定连续性的。Tomcat 总体结构Tomcat 的结构很复杂,但是 Tomcat 也非常的模块化,找到了 Tomcat 最核心的模块,您就抓住了 Tomcat 的“七寸”。下面是 Tomcat 的总体结构图:图 1.T...
Tomcat系统架构与设计模式,第2部分: 设计模式分析

Tomcat系统架构与设计模式,第2部分: 设计模式分析

Tomcat系统架构与设计模式,第2部分: 设计模式分析2012-06-27 IBM 门面设计模式门面设计模式在 Tomcat 中有多处使用,在 Request 和 Response 对象封装中、Standard Wrapper 到 ServletConfig 封装中、ApplicationContext 到 ServletContext 封装中等都用到了这种设计模式。门面设计模式的原理这么多场合都用到了这种设计模式,那这种设计模式究竟能有什么作用呢?顾名...
使用JavaServer Faces构建Apache Geronimo应用程序,第1部分

使用JavaServer Faces构建Apache Geronimo应用程序,第1部分

使用JavaServer Faces构建Apache Geronimo应用程序,第1部分2012-06-29 IBM Chris Herborth使用 Eclipse 和 Apache MyFaces Core 构建基本的应用程序开始之前本教程向 Java 程序员介绍如何使用 JSF 组件来构建具有高度交互性的部署在 Apache Geronimo 上的 Java EE 应用程序。本教程假定 读者使用 Eclipse 集成开发环境(IDE)作为开发平台。关...
使用JavaServer Faces构建Apache Geronimo应用程序,第5部分

使用JavaServer Faces构建Apache Geronimo应用程序,第5部分

使用JavaServer Faces构建Apache Geronimo应用程序,第5部分2012-07-04 IBM Chris Herborth将 JSF 应用程序与 Spring 集成开始之前本教程向 Java 程序员介绍如何使用 JSF 组件来构建具有高度交互性的部署在 Apache Geronimo 上的 Java EE 应用程序。本教程假设 读者将使用 Eclipse IDE 作为开发平台。关于本教程本教程讲解 Spring Framework,...
Struts 2介绍及运行一个简单的Struts 2程序

Struts 2介绍及运行一个简单的Struts 2程序

Struts 2介绍及运行一个简单的Struts 2程序2012-07-04 JAVA天地 一、MVC简介概括起来MVC的优点主要有一下方面:1)多个视图可以对应一个模型。按MVC设计模式,一个模型对应多个视图,可以减少代码的复制及代码的维护量,一旦模型发生改变, 也易于维护2)模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,例如,使用JSP页面、Velocity模板或者直接产生excel文档等3)应用被分隔为三层,降低了各层之间的耦合,提供...
JADT入门,第1部分

JADT入门,第1部分

JADT入门,第1部分2012-07-07 IBM Rakesh Midha在 Java 应用程序中使用 Java 字典和辞典 APIJava 字典和辞典 API(JADT)是 alphaWorks 上发布的辞典特性的 API,是一个基于标准的类库,用于在 Java 应用程序里访问语言特 性。它为 Java 程序员提供了透明的以 Java 为中心的方法,用以访问字典和非结构化单词,以及有关它们的信息。本文是由两部分组成的 系列文章的第 1 部分,涉及的内容...
<< 261 262 263 264 265 266 267 268 269 270 >>