第八章 第一节 运行时栈帧结构

Java虚拟机以方法作为最基本的执行单元,“栈帧”(Stack Frame)则是用于支持虚拟机进行方法调用和方法执行背后的数据结构,也是虚拟机运行时数据区中的虚拟机栈(Virtual Machine Stack)的栈元素。 -- 栈帧存储了方法的局部变量表、操作数栈、动态链接、方法返回信息和一些额外


第七章 第三节 类加载器

Java虚拟机设计团队有意把类加载阶段中的“通过一个类的全限定名;来获取描述改类的二进制字节流”这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需的类。实现这个动作的代码被称为“类加载器”(Class Loader) 3.1 类与类加载器 对于任意一个类,都必须由加载它的类加


第七章 第二节 类加载的过程

1、加载 Java需要完成这三个事情: 通过一个类的全限定名获取定义此类的二进制流 将静态数据结构转化为方法区的运行时数据结构 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口 2、验证


第七章 第一节 类被加载的时机

1、整体概述 加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,类型的加载过程必须按照这种顺序按部就班地开始,而解析阶段


第六章 第二节 字节码与数据类型

1、 Java虚拟机指令集所支持的数据类型 大部分指令都没有支持byte、char和short,设置没有任何指令支持boolean,是因为编译器会在编译器或运行期 将其转为对应的int类型数据。 2、字节码指令分类 加载和存储指令:将数据在栈帧中的局部变量表和操作数栈之间传输 将一个局部变量加载到操


第六章 第一节 class类文件的结构

1、class文件概述 Class文件是一组以8个字节(64位)为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部是程序运行的必要数据,没有空隙存在。当遇到需要占用8个字节以上空间的数据项时,则会按照高位在前的方式


日志方案调研

背景与目标 1.背景 应用日志可以让你了解应用内部的运行情况。日志对调试问题和监控集群活动非常有用。大部分现代化应用都有某种日志记录机制。同样的,容器引擎也被设计成支持日志记录。针对容器化应用,最简单最广泛采用的日志记录方式就是写入标准输出和标准错误流。 但是,由容器引擎或运行时提供的原生功能通常不


【运维】k8s证书过期问题处理

1、文档目的 处理k8s证书过期问题,使用 kubelet get node 后报错: x509: certificate has expired or is not yet valid ,提示证书过期。 2、系统要求 kubernetes:V1.19.10 3、修改过期时间 如果不需要自定义证书时


【运维】jenkins整合k8s

1、在 Linux 系统中安装并设置 kubectl 安装文档:在 Linux 系统中安装并设置 kubectl | Kubernetes 根据自己版本下载对应的kubectl,查看 <