一个进程对应一个jvm实例,一个运行时数据区,又包含多个线程,这些线程共享了方法区和堆,每个线程包含了程序计数器、本地方法栈和虚拟机栈。 核心概述 1.一个jvm实例只存在一个堆内存,堆也是java内存管理的核心区域 2.Java堆区在JVM启动的时候即被创建,其空间大小也就确定了。是JVM管理的最 ...
分类:
其他好文 时间:
2020-07-15 12:57:51
阅读次数:
71
本文已收录GitHub,更有互联网大厂面试真题,面试攻略,高效学习资料等Java程序员几乎都了解Spring。它的IoC(依赖反转)和AOP(面向切面编程)功能非常强大、易用。而它背后的字节码生成技术(在运行时,根据需要修改和生成Java字节码的技术)就是就是一项重要的支撑技术。Java字节码能够在JVM(Java虚拟机)上解释执行,或即时编译执行。其实,除了Java,JVM上的Groovy、Ko
分类:
编程语言 时间:
2020-07-15 12:52:09
阅读次数:
51
一、锁的粗化 看如下代码 public class Test { StringBuffer stb = new StringBuffer(); public void test1(){ //jvm的优化,锁的粗化 stb.append("1"); stb.append("2"); stb.appen ...
分类:
其他好文 时间:
2020-07-15 01:07:11
阅读次数:
53
思路: cpu多级缓存 - 伪共享 解决一致性 缓存锁MESI + 总线锁 缓存行填充 cpu指令乱序 演示demo 为什么乱序 - 好处 因为cpu比内存块太多,为了充分压榨cpu cpu内存屏障阻止乱序 sfence&lfence&mfence volatile实现 字节码层面 在access ...
分类:
其他好文 时间:
2020-07-15 01:02:42
阅读次数:
97
综述 JDK版本:JDK8/JDK7 + OracleJDK/OpenJDK Java开发框架:Spring Boot/Spring + Hibernate/MyBatis 前后端分离:单页应用/模板引擎 前后端接口文档自动生成:Swagger 业务端逻辑校验框架:Functional Valida ...
分类:
编程语言 时间:
2020-07-15 01:01:42
阅读次数:
130
搭建了一次,Prometheus和Grafana结合监控Mysql和服务器的监控。分享下1.环境搭建的服务器是CentOSLinuxrelease7.8.2003(Core)Mysql是5.7.302.安装GrafanaGrafana是一个可视化面板(Dashboard),有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持Graphite、zabbix、InfluxDB、Prom
分类:
数据库 时间:
2020-07-14 21:58:14
阅读次数:
118
1.JVM新加“即时编译”,将热点代码直接编成底层代码,减少增加翻译之后可能存在的通信歧义或效率问题; 2.字符集和字符编码 字符集:Unicode 字符编码: utf-8(这个是可变编码,需要1位用1位,需要15位放15位,最大可扩容到4字节,标记隔离的方式是这个字符的前2位来标识是否继续读); ...
分类:
编程语言 时间:
2020-07-14 18:37:38
阅读次数:
66
被动模式 无论是主动模式还是被动模式,都是站在zabbix agent角度来说的工作模式,比如被动模式,是说zabbix agent被动的接受zabbix server周期性发送过来的数据收集指令,在被动模式之下,zabbix server会根据主机关联的模板中的监控项和数据采集间隔时间,周期性的打 ...
分类:
其他好文 时间:
2020-07-14 16:22:30
阅读次数:
93
虽然 WeakReference 与 SoftReference 都有利于提高 GC 和 内存的效率, 但是 WeakReference ,一旦失去最后一个强引用,就会被 GC 回收,而软引用 虽然不能阻止被回收,但是可以延迟到 JVM 内存不足的时候。 ...
分类:
编程语言 时间:
2020-07-14 16:19:50
阅读次数:
88
准备以下文件 1、root@test:/usr/local/src# ll -rwxr-xr-x 1 root root 1259 Mar 4 20:57 install_zabbix.sh* -rw-r--r-- 1 root root 17200784 Feb 27 13:45 zabbix-4 ...
分类:
其他好文 时间:
2020-07-14 16:18:37
阅读次数:
58