1.前言2020年JVM生态报告已经出炉。该报告由英国软件安全服务商Snyk联合Oracle官方刊物TheJavaMagazine联合推出。我们来看看JVM生态圈最新的情况以及发展的趋势,这对Java开发者至关重要。同时欢迎加入[微信圈子]程序员交流圈交流编程经验。2.OpenJDK的崛起随着Oracle修改其JDK上的许可协议,用户在选择JDK的问题上有了更多顾虑。尽管甲骨文JDK仍然占主导地位
分类:
其他好文 时间:
2020-09-04 16:57:50
阅读次数:
56
Java编译器输入的指令流基本是一种基于栈的指令集架构,除此还有一种是基于寄存器的指令集架构。两者区别如下: 基于栈式架构的特点: (1)设计和实现简单,适用于资源受限的系统 (2)避开了寄存器分配难题:使用零地址指令方式分配。 (3)指令流中的指令大部分是零地址指令,其执行过程依赖于操作栈。指令集 ...
分类:
其他好文 时间:
2020-08-31 13:27:07
阅读次数:
67
1.Elasticsearch介绍和安装 用户访问我们的首页,一般都会直接搜索来寻找自己想要购买的商品。 而商品的数量非常多,而且分类繁杂。如果能正确的显示出用户想要的商品,并进行合理的过滤,尽快促成交易,是搜索系统要研究的核心。 面对这样复杂的搜索业务和数据量,使用传统数据库搜索就显得力不从心,一 ...
分类:
其他好文 时间:
2020-08-31 13:26:07
阅读次数:
63
JVM组成 从图上看到,大致分为以下组件: 类加载子系统 运行时数据区 执行引擎 本地方法库 本地库接口 本地库接口也就是用于调用本地方法的接口,这次就不多说,主要是上面的4个组件。 类加载子系统 类加载子系统的作用 类加载子系统负责从文件系统或网络中加载class文件,class文件在文件开头又特 ...
分类:
其他好文 时间:
2020-08-31 13:22:50
阅读次数:
46
一、进程结构 1、postgres server process是所有PostgreSQL数据库管理的父进程,在早期的版本种称为postmaster。 (1)随着pg_ctl start,postgres server process也随之启动。 (2)分配shared memory (3)启动一系 ...
分类:
数据库 时间:
2020-08-28 14:43:22
阅读次数:
82
阿里架构师讲解不一样的JVM——你真的了解JNI的运行机制吗
分类:
其他好文 时间:
2020-08-28 11:54:45
阅读次数:
37
内存模型 方法区(Method Area):方法区是各个线程共享的内存区域,它用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。当方法区无法满足内存分配需求时,将抛出OutOfMemoryError 异常。方法区里存放着类的版本,字段,方法,接口和常量池。常量池里存储着字 ...
分类:
其他好文 时间:
2020-08-27 17:11:42
阅读次数:
67
这篇文章主要来介绍下JVM中的各种GC,让大家来搞清楚这几个概念。大家可能见到过很多的GC名词,比如:MinorGC、YoungGC、FullGC、OldGC、MajorGC、MixedGC。这么多概念,想想都头疼,到底各种乱七八糟的GC指的是什么?下面先引用R大在知乎上的回答:针对HotSpotVM的实现,它里面的GC其实准确分类有两种:PartialGC(局部GC):并不收集整个GC堆的模式Y
分类:
其他好文 时间:
2020-08-27 13:14:52
阅读次数:
49
为了便于管理,JVM在执行java程序的时候,会把它所管理的内存划分为多个不同区域。 1,class文件 class文件是java程序编译后生成的中间代码,这些中间代码将会被JVM解释执行。 2,类装载器子系统 类装载器子系统负责把class文件装载到内存中,供虚拟机执行。JVM有两种类装载器,分别 ...
分类:
其他好文 时间:
2020-08-24 16:37:21
阅读次数:
52
每个java开发同学不管是日常工作中还是面试里,都会遇到JDK、JVM和GC的问题。本文会从以下10个问题为切入点,带着大家一起全面了解一下JVM的方方面面。JVM、JRE和JDK的区别和联系JVM是什么?以及它的主要作用JVM的核心功能有哪些类加载机制和过程运行时数据区的逻辑结构JVM的内存模型如何确定对象是垃圾垃圾收集的算法有哪些各种问世的垃圾收集器JVM调优的参数配置上一篇文章结尾时我们谈到
分类:
其他好文 时间:
2020-08-24 16:31:19
阅读次数:
50