logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

三种实现分布式锁的方式

一、为什么要使用分布式锁我们在开发应用的时候,如果需要对某一个共享变量进行多线程同步访问的时候,可以使用我们学到的Java多线程的18般武艺进行处理,并且可以完美的运行,毫无Bug!注意这是单机应用,也就是所有的请求都会分配到当前服务器的JVM内部,然后映射为操作系统的线程进行处理!而这个共享变量只是在这个JVM内部的一块内存空间!后来业务发展,需要做集群,一个应用需要部署到几台机器上然后做负载均

#zookeeper#redis#mysql
JVM 之 (14) 类加载器详解和双亲委派模型

类加载器        虚拟机设计团队把类加载阶段中“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的模块称为“类加载器”。类加载器分类      启动(Bootstrap)类加载器        启动类加载器主要加载的是JVM自身需要的类,这个类加载使用C++语言实现的,是虚拟机自身的一部分,它负责

JVM 之(2)对象的创建、内存布局、访问定位

对象的创建1.类加载检查    普通对象的创建过程:虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那么必须先执行相应的类加载过程。2.分配内存    分配内存时主要注意两个问题:1.如何分配空间。2.修改指针时如何实现线程安全。    jvm为实例对象分配空间主要有两种方法     

吊打面试官,手撸JAVA架构面试offer

技术栈传送门JAVA 基础手撸架构,Java基础面试100问_vincent-CSDN博客JAVA 集合手撸架构,JAVA集合面试60问_vincent-CSDN博客JVM 虚拟机手撸架构,JVM面试30问_vincent-CSDN博客并发编程手撸架构,并发编程面试123问_vincent-CSDN博客Spring手撸架构,Spring面试63问_vincent-CSDN博客Spring clou

#面试#java#架构
Java 内存溢出(java.lang.OutOfMemoryError)常见情况和总结

在解决java内存溢出问题之前,需要对jvm(java虚拟机)的内存管理有一定的认识。jvm管理的内存大致包括三种不同类型的内存区域:Permanent Generation space(永久保存区域)、Heap space(堆区域)、Java Stacks(Java栈)。其中永久保存区域主要存放Class(类)和Meta的信息,Class第一次被Load的时候被放入PermGen space区域

#java#jvm
JVM 之 (12) 类加载机制

一、Java类加载机制1.概述       Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允许用户借由这个Class相关的元信息对象间接调用Class对象的功能。      虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接

JVM 之(15)局部变量表

        在《JVM 之(1)运行时数据区》提到,虚拟机栈是描述Java方法执行的内存模型:每个方法在执行的同时都会创建一个栈帧(Stack Frame)用于存储局部变量表、操作数栈、动态链接、方法出口等信息。本篇主要分析局部变量表的原理结构。        局部变量表是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量。在Java程序被编译为Class文件时,就在方法的Code属

手撸架构,JVM 面试30问

系统学习《深入了解JVM》https://blog.csdn.net/wuzhiwei549/category_9275772.html?spm=1001.2014.3001.5482JDK、JRE、JVM的关系是什么?什么是JvM?英文名称( Java Virtual machine),就是JAA虚拟机,它只识别.cass类型文件,它能够将cass文件中的字节码指令进行识别并调用操作系统向上的A

文章图片
#面试#java#职场和发展
JVM 之(7)内存分配

堆内存划分为 新生代(Eden空间、Survivor空间)和 老年代(Tenured/Old 空间)。1.对象优先在Eden分配大多是情况下,对象在新生代Eden区中分配。当Eden区中没有足够空间进行分配时,虚拟机将发起一次Minor GC-verbose:gc  -XX:+PrintGCDetails  -XX:+PrintGCTimeStamps 打印gc日志 -Xms20M -Xmx20M

终于有人把 Docker 讲清楚了

一、简介1、了解Docker的前生LXCLXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。与传统虚拟化技术相比,它的优势在于:(1)与宿主机使用同一个内核,性能损耗小;(

#docker
    共 29 条
  • 1
  • 2
  • 3
  • 请选择