代码改变世界

深入理解JVM(八)——java堆分析

2017-09-12 11:39 by 飘扬的红领巾, 433 阅读, 收藏, 编辑
正文内容加载中...

NOSQL EYE开源

2017-09-06 12:04 by 飘扬的红领巾, 553 阅读, 收藏, 编辑
摘要: 简介 NOSQL数据库监控工具,目前实现了对Redis、MongoDB的监控功能。 功能列表 下载地址 http://git.oschina.net/redtie/nosqleye 演示地址 http://106.14.181.95:7004 登录用户名、密码:admin/admin 安装环境 推荐阅读全文

深入理解JVM(七)——性能监控工具

2017-09-01 17:20 by 飘扬的红领巾, 418 阅读, 收藏, 编辑
摘要: 前言 工欲善其事必先利其器,性能优化和故障排查在我们大都数人眼里是件比较棘手的事情,一是需要具备一定的原理知识作为基础,二是需要掌握排查问题和解决问题的流程、方法。本文就将介绍利用性能监控工具,帮助开发者更快更准的找到问题产生的根源。本文分为三部分,第一部分将介绍在Linux环境下的常用监控工具,第阅读全文

深入理解JVM(六)——类加载器原理

2017-08-25 17:41 by 飘扬的红领巾, 68 阅读, 收藏, 编辑
摘要: 我们知道我们编写的java代码,会经过编译器编译成字节码文件(class文件),再把字节码文件装载到JVM中,映射到各个内存区域中,我们的程序就可以在内存中运行了。那么字节码文件是怎样装载到JVM中的呢?中间经过了哪些步骤?常说的双亲委派模式又是怎么回事?本文主要搞清楚这些问题。 类装载流程 1、加载 加载是类装载的第一步,首先通过class文件的路径读取到二进制流,并解析二进制流将里面...阅读全文

深入理解JVM(五)——垃圾回收器

2017-08-21 09:46 by 飘扬的红领巾, 140 阅读, 收藏, 编辑
摘要: 轻松学习JVM(五)——垃圾回收器 上一篇我们介绍了常见的垃圾回收算法,不同的算法各有各的优缺点,在JVM中并不是单纯的使用某一种算法进行垃圾回收,而是将不同的垃圾回收算法包装在不同的垃圾回收器当中,用户可以根据自身的需求,使用不同的垃圾回收器,以便让自己的java程序性能到达最佳。 在介绍垃圾回收阅读全文

深入理解JVM(四)——垃圾回收算法

2017-08-18 15:30 by 飘扬的红领巾, 431 阅读, 收藏, 编辑
摘要: 我们都知道java语言与C语言最大的区别就是内存自动回收,那么JVM是怎么控制内存回收的,这篇文章将介绍JVM垃圾回收的几种算法,从而了解内存回收的基本原理。 stop the world 在介绍垃圾回收算法之前,我们需要先了解一个词“stop the world”,stop the world会在阅读全文

深入理解JVM(三)——配置参数

2017-08-15 11:10 by 飘扬的红领巾, 183 阅读, 收藏, 编辑
摘要: JVM配置参数分为三类参数: 1、跟踪参数 2、堆分配参数 3、栈分配参数 这三类参数分别用于跟踪监控JVM状态,分配堆内存以及分配栈内存。 跟踪参数 跟踪参数用于跟踪监控JVM,往往被开发人员用于JVM调优以及故障排查。 1、当发生GC时,打印GC简要信息 使用-XX:+PrintGC或-verb阅读全文

深入理解JVM(二)——内存模型、可见性、指令重排序

2017-08-14 09:16 by 飘扬的红领巾, 423 阅读, 收藏, 编辑
摘要: 上一篇我们介绍了JVM的基本运行流程以及内存结构,对JVM有了初步的认识,这篇文章我们将根据JVM的内存模型探索java当中变量的可见性以及不同的java指令在并发时可能发生的指令重排序的情况。 内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再把需求明确一点,一阅读全文

深入理解JVM(一)——基本原理

2017-08-11 10:20 by 飘扬的红领巾, 883 阅读, 收藏, 编辑
摘要: 前言 JVM一直是java知识里面进阶阶段的重要部分,如果希望在java领域研究的更深入,则JVM则是如论如何也避开不了的话题,本系列试图通过简洁易读的方式,讲解JVM必要的知识点。 运行流程 我们都知道java一直宣传的口号是:一次编译,到处运行。那么它如何实现的呢?我们看下图: java程序经过阅读全文

做了两款数据库监控工具,打算在近期开源

2017-08-07 09:22 by 飘扬的红领巾, 3301 阅读, 收藏, 编辑
摘要: 前言 很久没有更新博客了,但是这个习惯不能废,最近一直在做数据库方面的学习,做了两个数据库的监控工具,往各位博友指正。 MySQL监控工具 演示地址:[已关闭] 功能树: 这个工具可以分别帮忙开发人员、DBA、测试人员做各自关心的事情,例如开发人员可以监控SQL,分析慢查询,该工具也会给出简单的优化阅读全文