logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【JVM】虚拟机栈的五脏六腑

虚拟机栈,本身就是一个普通的栈,栈中的元素叫做栈帧。虚拟机栈是线程私有的,每有一个线程,虚拟机就会创建一个虚拟机栈,线程与虚拟机栈一一对应。线程每调用一个方法,虚拟机就会创建一个栈帧,并将此栈帧压入虚拟机栈中,当方法调用结束后,此栈帧又从虚拟机栈中弹出。线程每调用一个方法,都会起一个栈帧,因此栈帧的容量偏小,栈帧虽小,却五脏俱全。栈帧包含局部变量表、操作数栈、动态链接...

【JVM】说说java中的堆区

堆(Heap)是被虚拟机所管理的最大的一块内存区域,在堆中,会有以下一些对象:朝生夕死的小对象,蜉蝣一般大对象,例如长数组,需要大量连续的内存空间长周期对象,存活很久,很能熬因此,目前主流的JVM,利用可达性分析算法分析对象是否死亡,最后针对性地采用分代搜集算法回收死亡对象。判断对象是否死亡,可以先参考我的另外一篇文章【JAVA】如何判断对象已经死亡?堆可以分为新生代与老年代,用...

#jvm
【JVM】灵性一问——为什么用元空间替换永久代?

前言首先需要明确的是,以下我们讨论的HotSpot虚拟机,其他类型的虚拟机,例如JRockit与J9等,压根就没有永久代的概念。因此,下面所说的“虚拟机”都是HotSpot版本的。要想理解这种变化的原因,需要先理解方法区、永久代与元空间的概念与之间的关系。方法区与永久代,元空间之间的关系方法区是一种规范,不同的虚拟机厂商可以基于规范做出不同的实现,永久代和元空间就是出于不同jdk版...

docker运行ElasticSearch

拉取最新版镜像下载最新版ElasticSearchdocker pull elasticsearch默认会使用latestd的tag拉取最新版本,但是报错了Using default tag: latestError response from daemon: manifest for elasticsearch:latest not found: manifest unknown: manife

tensorflow里的全局变量初始化

在2017年3月2号之前,全局变量初始化用的是initialize_all_variables()而在2017-03-02之后需要使用tf.global_variables_initializer()

#tensorflow
8种方案,保证缓存和数据库的最终一致性

​我们通常使用缓存机制来提升系统的性能,缓存系统下的读写操作,一般都需要操作数据库与缓存。对于读操作,一般是先查询缓存,查询不到再查询数据库,最后回写进缓存。而对于写操作,究竟是先删除(更新)缓存,再更新数据库,还是先更新数据库,再删除(更新)缓存呢?由于对数据库以及缓存的整体操作,并不是原子性的,再加上读写并发,究竟什么样的方案可以保证数据库与缓存的一致性呢?下面介绍8种方案,配合读写时序图,希

文章图片
【JAVA8】快速理解Consumer、Supplier、Predicate与Function

快速理解Consumer、Supplier、Predicate与Function一、前言这几个接口都处在java.util.function包下,Consumer(消费型),Supplier(供给型)、Predicate(判断型)与Function(转换型),暂时不理解他们的类型没关系。如果对Lambda不怎么理解的同学,可以先移步到...

文章图片
深入分析AQS实现原理

简单解释一下J.U.C,是JDK中提供的并发工具包,java.util.concurrent。里面提供了很多并发编程中很常用的实用工具类,比如atomic原子操作、比如lock同步锁、fork/join等。从Lock作为切入点我想以lock作为切入点来讲解AQS,毕竟同步锁是解决线程安全问题的通用手段,也是我们工作中用得比较多的方式。Lock APILock是一个接口,方法定义...

【Docker】镜像安全扫描工具clair与clairctl

clair是什么?clair是一个开源项目,用于静态分析appc和docker容器中的漏洞。漏洞元数据从一组已知的源连续导入,并与容器映像的索引内容相关联,以生成威胁容器的漏洞列表。clair版本选择clair选择2.0.1版本clair安装过程docker方式1.clair将漏洞元数据存储在Postgres中,先拉取postgres:9.6docker pull ...

Kubernetes Informer 详解

文章转自于https://www.kubernetes.org.cn/2693.htmlInformer 基础功能Informer 是 Client-go 中的一个核心工具包。在 Kubernetes 源码中,如果 Kubernetes 的某个组件,需要 List/Get Kubernetes 中的 Object,在绝大多 数情况下,会直接使用 Informer 实例中的 Lister()方法(该

    共 12 条
  • 1
  • 2
  • 请选择