摘要:
记一次ElasticSearch重启之后shard未分配问题的解决 环境 ElasticSearch6.3.2,三节点集群 Ubuntu16.04 一个名为user的索引,索引配置为:3 primary shard,每个primary shard 2个replica 正常情况下,各个分片的分布如下: 阅读全文
摘要:
ElasticSearch评分分析 explian 解释和一些查询理解 按照 "es ik分析器" 安装了ik分词器。创建索引: 。索引包含2个字段:content和nick,如下: 实验环境为:单台的ElasticSearch6.3.2版本。索引配置如下: 由此可知,ElasticSearch创建 阅读全文
摘要:
明白生产环境中的jvm参数 写代码的时候,程序写完了,发到线上去运行,跑一段时间后,程序变慢了,cpu负载高了……一堆问题出来了,所以了解一下生产环境的机器上的jvm配置是有必要的。比如说: JDK版本是多少?采用何种垃圾回收器? 程序启动的时候默认分配堆内存空间是多少?随着程序的运行,程序最多能使 阅读全文
摘要:
分布式中的 transaction log 在分布式系统中,有很多台node组成一个cluster,对于client 的一个写操作请求而言,在什么样的情况下,cluster告诉client此次写操作请求是成功的呢? 首先来定义一下什么是写操作成功? 假设有一个三节点的cluster,一个primar 阅读全文
摘要:
为什么要将服务或者数据部署多份? 1. 分布数据的理由 单机无法承受负载,请写请求太大,一台机处理不过来,为了可扩展性 避免单点故障,一台机挂了,整个服务就挂了。为了容错和高可用 降低服务的延迟,用户分布在各个地区,服务器部署在各个机房,将服务部署到离用户近的地方 2. 垂直扩容方案 一台机器内存不 阅读全文
摘要:
Spark 整合ElasticSearch 因为做资料搜索用到了ElasticSearch,最近又了解一下 Spark ML,先来演示一个Spark 读取/写入 ElasticSearch 简单示例。(spark 读取ElasticSearch中数据) 环境:IDEA2016,JDK8,window 阅读全文
摘要:
JAVA方法调用中的解析与分派 本文算是《深入理解JVM》的读书笔记,参考书中的相关代码示例,从字节码指令角度看看解析与分派的区别。 方法调用,其实就是要回答一个问题:JVM在执行一个方法的时候,它是如何找到这个方法的? 找一个方法,就需要知道 所谓的 地址。这个地址,从不同的层次看,对它的称呼也不 阅读全文
摘要:
static 和 final 关键字 对实例变量赋初始值的影响 最近一直在看《深入理解Java虚拟机》,在看完了对象内存分配、Class文件格式之后,想深扒一下实例变量是如何被赋上初始值的这个问题的细节。 在2.3.1小节中讲对象创建的时候,讲到内存分配有两种方式:一种是指针碰撞;另一种是空闲列表。 阅读全文
摘要:
从虚拟机指令执行的角度分析JAVA中多态的实现原理 前几天突然被一个“家伙”问了几个问题,其中一个是:JAVA中的多态的实现原理是什么? 我一想,这肯定不是从语法的角度来阐释多态吧,隐隐约约地记得是与Class文件格式中的方法表有关,但是不知道虚拟机在执行的时候,是如何选择正确的方法来执行的了。so 阅读全文
摘要:
HanLP 关键词提取算法分析 参考论文:《TextRank: Bringing Order into Texts》 "TextRank算法提取关键词的Java实现" "TextRank算法自动摘要的Java实现" 这篇文章中作者大概解释了一下TextRank公式 1. 论文 TextRank是一个 阅读全文