「Elasticsearch」ES重建索引怎么才能做到数据无缝迁移呢?

背景众所周知,Elasticsearch是⼀个实时的分布式搜索引擎,为⽤户提供搜索服务。当我们决定存储某种数据,在创建索引的时候就需要将数据结构,即Mapping确定下来,于此同时索引的设定和很多固定配置将不能改变。那如果后续业务发生变化,需要改变数据结...

阅读全文



Java的动态绑定和静态绑定

引言在Java方法调用的过程中,JVM是如何知道调用的是哪个类的方法源代码呢?这就涉及到程序绑定这个概念。程序绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对Java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定。静态绑定在程...

阅读全文



JVM知识点汇总

JVMClass文件结构魔数:唯一作用是用于确定这个文件是否为一个能被虚拟机接受的Class文件。版本号:确定Class文件编译器版本,低版本的虚拟机不能运行高版本编译器编译的Class文件。常量池:字面量符号引用访问标志:用于识别一些类或接口层次的访问...

阅读全文



Java Object.hashCode()返回的是对象内存地址?

基于OpenJDK 8一直以为Java Object.hashCode()的结果就是通过对象的内存地址做相关运算得到的,但是无意在网上看到有相应的意见争论,故抽时间从源码层面验证了剖析了hashCode的默认计算方法。先说结论:OpenJDK8 默认ha...

阅读全文



ThreadLocal的内存泄露?什么原因?如何避免?

前言在分析ThreadLocal导致的内存泄露前,需要普及了解一下内存泄露、强引用与弱引用以及GC回收机制,这样才能更好的分析为什么ThreadLocal会导致内存泄露呢?更重要的是知道该如何避免这样情况发生,增强系统的健壮性。内存泄露内存泄露为程序在申...

阅读全文