• 找出被空集合占用的内存

    在平时的内存分析中发现有很大一部分集合对象在实例化后就从没有被使用过。集合类是我们平时使用最多的一种类,部分集合类在实例化时就会得到一部分空间(比如ArrayList、HashMap等)。这些空的集合实例虽然价值不大,但也有可能会浪费很多的

    [阅读更多...]
  • 使用Memory Analyzer分析内存泄漏

    概述 检测内存泄漏通常采用的方式是检查内存中某些对象的数量是否存在单调递增的现象。这可以通过“在线”实时监控分析的方式或者比较不同时段的内存快照来实现。然而实时监控的方案通常并不可行,尤其是在生产环境上,得考虑到因此导致的性能消耗;并且内存

    [阅读更多...]
  • 使用MAT找出重复引用的jar或类

    这篇文章将介绍一种处理应用中的类(或库)的重复引用以及版本冲突问题的解决方案。这在应用集成阶段非常有效。适用于如下案例: NoClassDefFoundError:在classpath中有两个不同版本的同名类; 集成大型产品:检查同一个版本

    [阅读更多...]
  • 在命令行执行JMeter测试计划

    有时候会需要在linux的命令行上运行JMeter,简单说一下做法: 在图形界面上创建测试计划,并保存生成的test_plan.jmx文件; 将生成的test_plan.jmx文件上传到linux服务器; 在linux的命令行执行如下指令:

    [阅读更多...]
  • 使用JMeter + PerfMon做远程监控

    本文假设已经安装好了JMeter 下载插件 PerfMon并不是JMeter原生的工具。要使用这个工具还需要下载一些插件。下载地址是jmeter-plugins.org。在JMeter Plugins的下载页面可以看到如下需要下载的内容:

    [阅读更多...]
  • MySQL的索引

    为什么要使用索引 使用索引主要是为了加快查询速度。通常影响查询速度的最大的也是索引的正确使用。 一个没有索引的数据表就是一个无序的数据行集合,如果我们要查询数据表的某个数据行,就要检查数据表的每一个数据行,看是否与期望值匹配。如果数据表很大

    [阅读更多...]
  • Kafka high level consumer

    为什么选择High Level Consumer 很多时候用户只是想从kafka中读取数据,对于如何处理消息的offset则不怎么关注。在抽象了Kafka中消费事件的大部分细节后,High Level Consumer可以让用户使用起来更为

    [阅读更多...]
  • Kafka Simple Consumer

    Kafka的Simple Consumer并不简单。相反的,它是直接在对Kafka的partition和offset进行操作,是一种比较接近底层的方案。 为什么要使用Simple Consumer 使用SimpleConsumer最主要的原

    [阅读更多...]
  • MySQL分区 – 限制

    这一节主要说明MySQL中对分区的一些限制和不足。 禁止使用的结构 如下MySQL结构禁止在分区表达式中使用: 存储过程、存储函数、UDF(用户自定函数)或者插件; 已声明的变量和用户变量。 算数运算符和逻辑运算符 分区表达式中是允许使用+

    [阅读更多...]
  • MySQL分区 – 概述

    引言 MySQL的分区方案可以将一个表中的数据分别保存到不同的位置。用户用来分区的规则被称为分区函数。分区函数可以是模运算函数,数值List集合匹配,内置的hash函数或者线性Hash函数。用户可以按照自己的需要选择分区函数,并为分区函数提

    [阅读更多...]