- 博客(5)
- 收藏
- 关注
原创 深入理解JVM虚拟机读书笔记-第四章 虚拟机性能监控与故障处理
第4章 虚拟机性能监控与故障处理 4.2 JDK命令行工具 JDK命令行工具大多数是jdk/lib/tool.jar类库的一层薄包装,主要功能代码实在tools类库实现的。 Sun JDK监控和故障处理工具如下表: 名称 主要作用 jps JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程 jstal JVM Statistics Mo...
2019-08-15 12:25:15
172
原创 Redis源码阅读-服务端初始化-配置加载部分
Redis服务端(1.3.6版本)初始化——配置加载部分 对于Redis的源码阅读,笔者打算先从最低版本读起,这样能更好地理解版本迭代的原因,认清优化原因。 Redis服务端(1.3.6版本)初始化——配置加载部分 Redis服务端代码主要放在redis.c文件中。主要负责服务端业务逻辑实现,由上到下分为头文件引用、宏定义、数据结构、函数声明、全局变量、业务实现,几部分组成。本文主要讨论Redis...
2019-08-15 12:19:22
206
原创 n位邀请码生成问题
N位邀请码生成问题 1. 传统方式 采用Java库提供的基本Random类进行处理,考虑如下问题,生成n位邀请码,要求邀请码中的字符为0-9A-Z,这种方式只需要采用Random取n个0-35之间的随机数,然后分别与0-9A-Z进行对应。去重操作可以交给数据库来解决。 优点: 1. 实现简单 2. 对邀请码要求量小的情况下相当适用 缺点: 1. 后期去重十分不方便,极易出现重复情况 2. Redi...
2019-08-13 21:01:11
341
原创 深入理解JVM虚拟机读书笔记-第三章 垃圾回收器和内存分配策略
第3章 垃圾回收器和内存分配策略 3.1 概述 1960年诞生第一门真正使用内存动态分配和垃圾回收技术的语言Lisp。 由于程序计数器、虚拟机栈、本地方法栈是线程私有的,当线程结束就会被回收,同时虚拟机栈和本地方法栈在方法结束时,内存也会被回收,因此我们只用考虑Java堆和方法区的内存分配与回收问题。 3.2 对象已死吗? 3.2.1 引用计数法 引用计数法:给对象中添加一个引用计数器,每当一个地...
2019-08-13 10:19:19
161
原创 深入理解JVM虚拟机读书笔记-第二章 Java内存区域与内存溢出异常
第2章 Java内存区域与内存溢出异常 2.2 运行时内存区域 Java虚拟机所管理的内存包括如下几个运行时数据区: 2.2.1 程序计数器 程序计数器是一块比较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。 Java虚拟机的多线程...
2019-08-12 18:49:58
166
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人