1_整体概述

文章目录

  1. 整体结构
  2. 详细结构
  3. 架构模型
  4. JVM生命周期

1、整体结构

  • Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行。
  • jvm是运行在操作系统之上的,与硬件没有直接交互。

在这里插入图片描述

2、详细结构

原图:https://img-blog.csdnimg.cn/20210518203736751.png
译图:
在这里插入图片描述

3、架构模型

  1. 基于的指令集架构:跨平台性(无需硬件支持)、指令集小、指令多、执行性能比寄存器差。无需寻址(零地址指令方式分配)。
  2. 基于寄存器的指令集架构:依赖硬件、指令集大,执行效率高、需要寻址(一、二、三地址指令)

java指令集是基于栈的

public class StackStruTest {
    public static void main(String[] args) {
        int i = 2;
        int j = 3;
        int var = i + j;
    }
}

对生成的字节码文件进行反编译

javap -v StackStruTest.class
Code:
     stack=2, locals=4, args_size=1
        0: iconst_2       //常量2 
        1: istore_1       //放到操作数栈索引位置1  
        2: iconst_3       //常量3 
        3: istore_2       //放到操作数栈索引位置2
        4: iload_1        //加载 操作数栈索引位置1  也就是  i 
        5: iload_2        //加载 操作数栈索引位置2  也就是  j
        6: iadd           //常量2、3出栈,执行相加
        7: istore_3       //将结果k 保存在 操作数栈索引位置3  
        8: return         
     LineNumberTable:

4、JVM生命周期

  1. 启动
    通过引导类加载器(Bootstrap class loader)创建一个初始类(initial class)完成。
    初始类由虚拟机的具体实现指定。
  2. 执行
    执行一个java程序,就是执行一个叫做java虚拟机的进程。
  3. 退出
    程序结束、异常/错误、操作系统错误导致的JVM进程终止、Runtime/System类的exit方法(调用native的halt0())
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Kubernetes(简称K8s)是由Google开源的容器管理平台,旨在简化容器化应用程序的部署、扩展和管理。其架构设计具有高度的可伸缩性和弹性。 Kubernetes采用了主从架构,由以下几个核心组件组成: 1. Master节点:Master节点是Kubernetes集群的控制中心,负责管理整个集群的状态,包括调度、监控、自动扩展和管理资源等。主要组件包括: - API Server:提供API接口,用于与外部用户和其他组件进行通信。 - Scheduler:负责将容器放置到可用的节点上,根据资源需求、健康状态和调度策略等进行决策。 - Controller Manager:管理集群中的各个控制器,确保系统的期望状态与实际状态保持一致。 - etcd数据存储:保存集群的配置信息和状态。 2. Node节点:Node节点是Kubernetes集群中的工作节点,可以运行容器应用。主要组件包括: - Kubelet:在Node节点上与Master节点通信,接收并执行Pod定义中的容器。 - Kube-proxy:负责为Pod提供网络代理和负载均衡功能,实现Pod间的通信和服务发现。 - Container Runtime:负责管理容器的生命周期,如创建、销毁和监控等。 3. Pod:是Kubernetes的最小调度单位,可以包含一个或多个紧密关联的容器。Pod中的容器共享网络和存储资源,可以通过本地通信来提高性能。 4. Service:为Pod提供稳定的网络地址和负载均衡功能,使得应用程序可以通过服务名称来访问。Service使用标签(Label)来选择Pod,并将请求转发给符合标签选择条件的Pod。 Kubernetes的整体概述是将容器化应用程序进行自动化部署、运行和扩展,以提高应用的可用性和可伸缩性。其架构设计使得集群具有高可靠性、自我修复能力和灵活性,可以适应各种环境和应用场景的需求。通过使用Kubernetes,可以简化应用的管理和操作,提高开发和运维的效率。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值