- 浏览: 10030 次
- 性别:
- 来自: 北京
最新评论
-
戢_时光:
比如ScheduledThreadPoolExecutor类, ...
java并发之ThreadPoolExecutor分析 -
05rjyzl11:
...
java并发之ThreadPoolExecutor分析
文章列表
在项目压测过程中,发现系统占用,上下文切换非常频繁,在此记录下调优过程,希望对后来人有所帮助。
测试方法:模拟客户端实际操作,向服务器高并发发送数据,查看服务器的负载情况。
服务器基本配置如下
1,基本性能监控工具 top
Perftools拾遗 做为一个java程序员,堆外内存泄漏问题并不总能遇到。去年年底换公司去了一个游戏小公司。去之前就一直听说存在内存泄漏问题,但是一直不知道问题出现在哪里。由于权限,职责的原因,没能直接参与线上的问题排查。今年六月份,我负责服务器迁移,调整,使得我不得不直接参与线上问题的排查。 问题描述:在一个8核16G的常规服务器配置上,项目每隔几天就会宕机一次。在观察的过程中,我发现。java堆外内存大约以每6小时100M的速度在 ...
设计模式之spring分析
Spring已经在java的世界里横行很多年了,但是阅读起来并不那么容易。特别是接口概念的广泛使用,更增加了分析的难度,本文从设计模式的角度来对其进行分析,会忽略实现的具体细节。本文中,对于spring所涉及到的模式,并非来自官方,可能某些地方会让读者感到牵强,纯属个人见解,希望读者批判阅读。
我们将从讨论BeanFactory和ApplicationContext的关系开始叩开spring的设计之门(实际上是AbstractApplicationContext和DefaultListableBeanFactory
java并发之ThreadPoolExecutor分析
ThreadPoolExecutor线程池是我们平时使用最多的线程池处理工具,充分理解线程池的实现原理,可以让我们在碰到相关问题时有效的进行参数调优与处理,进而提高程序的整体性能与吞吐量。本文依托于jdk1.8,但不会讨论代码的实现细节,需要注意的是ctl属性,ctl是把两个属性合并到一个int字段中进行记录,高3位记录线程池状态,低29位记录线程池数量。这样的做法仁者见仁智者见智,复杂性增加不说,性能到底能提升多少呢?大家在阅读的时候可以把int理解为长度为
Java同步器框架剖析
同步器(Synchronizer)框架是java并发的核心基础,充分理解其设计原理能够更精准的使用/扩展部分工具,进而提高应用程序的性能。本文的分析依托源码,纯属个人见解。希望阅读者能够批判阅 ...
也说线程
作为java程序员,我们无时无刻都在和线程打交道。由于jvm为我们隐藏了太多的细节,我们很难透过层层迷雾去真正理解线程本身的性质。如果编写多线程的程序员不能充分理解线程的整体模型,编程过程中常常会出现一些莫名其妙的问题。掌握线程的设计初衷,也能为我们提供一个审视问题的角度,能够更加精准的使用线程。
以下是我个人理解的一个线程图
从上图我们可知,我们大部分时间是直接使用线程提供的相关API编程。所谓知其所以然,才能知其然。如果我们