Eclipse Memory Analyzer Tools(MAT)是一个功能丰富且轻量的 Java 堆内存分析工具,可以用来辅助发现内存泄漏减少内存占用。 使用 Memory Analyzer 来分析生产环境的 Java 堆转
[阅读更多...]-
MemoryAnalyzer介绍及使用
-
Java实现邮件发送过程中遇到的几个问题
发送邮件的代码是我从以前的一个应用上直接拷贝过来的。以前使用的腾讯的邮件服务,程序执行起来没有任何问题。后来修改为微软office365邮件服务后,却遇到了两个问题。 问题一,tls加密设置 异常信息如下: 这个解决起来比较容易。找了些资料
[阅读更多...] -
关于Heap Dump
Heap Dump是什么? Heap Dump也叫堆转储文件,是一个Java进程在某个时间点上的内存快照。Heap Dump是有着多种类型的。不过总体上heap dump在触发快照的时候都保存了java对象和类的信息。通常在写heap du
[阅读更多...] -
Lambda表达式2 – 语法说明
语法说明 一个lambda表达式由如下几个部分组成: 1. 在圆括号中以逗号分隔的形参列表。在CheckPerson.test方法中包含一个参数p,代表了一个Person类的实例。注意:lambda表达式中的参数的类型是可以省略的;此外,如
[阅读更多...] -
Lambda表达式1 – 一个简单用例
我对java中lambda表达式的看法是相当纠结的: 一个我这么想:lambda表达式降低了java程序的阅读体验。java程序一直不以表现力出众,正相反使Java流行的一个因素正是它的安全和保守——即使是初学者只要注意些也能写出健壮且容易
[阅读更多...] -
使用Memory Analyzer分析Java集合
上一节里说了如何发现JVM内存中的空集合对象,这对减少JVM内存的浪费有些帮助。这一节要说的内容更有意思一些,可以让我们更深入地了解Java集合的使用。 先说明一点:这里仅仅是通过内存分析来得到一些结论。分析出来的结论通过JDK源码也许可以
[阅读更多...] -
找出被空集合占用的内存
在平时的内存分析中发现有很大一部分集合对象在实例化后就从没有被使用过。集合类是我们平时使用最多的一种类,部分集合类在实例化时就会得到一部分空间(比如ArrayList、HashMap等)。这些空的集合实例虽然价值不大,但也有可能会浪费很多的
[阅读更多...] -
使用Memory Analyzer分析内存泄漏
概述 检测内存泄漏通常采用的方式是检查内存中某些对象的数量是否存在单调递增的现象。这可以通过“在线”实时监控分析的方式或者比较不同时段的内存快照来实现。然而实时监控的方案通常并不可行,尤其是在生产环境上,得考虑到因此导致的性能消耗;并且内存
[阅读更多...] -
使用MAT找出重复引用的jar或类
这篇文章将介绍一种处理应用中的类(或库)的重复引用以及版本冲突问题的解决方案。这在应用集成阶段非常有效。适用于如下案例: NoClassDefFoundError:在classpath中有两个不同版本的同名类; 集成大型产品:检查同一个版本
[阅读更多...] -
在命令行执行JMeter测试计划
有时候会需要在linux的命令行上运行JMeter,简单说一下做法: 在图形界面上创建测试计划,并保存生成的test_plan.jmx文件; 将生成的test_plan.jmx文件上传到linux服务器; 在linux的命令行执行如下指令:
[阅读更多...]