上篇讲到了「拜占庭将军问题」:多个拜占庭将军要如何在可能有叛徒、信使可能被策反或者暗杀的情况下达成是否要进攻的一致性决定?还不了解的先看看上一篇《拜占庭将军问题》。这篇主要是...
上篇讲到了「拜占庭将军问题」:多个拜占庭将军要如何在可能有叛徒、信使可能被策反或者暗杀的情况下达成是否要进攻的一致性决定?还不了解的先看看上一篇《拜占庭将军问题》。这篇主要是...
1 搜索示例 首先在lucene索引中预先写入了一些文档,主要包含两个field (id和name)信息,每个field都是stored和indexed 我们使用如下代码,可...
摘要:消息存储对于每一款消息队列都非常重要,那么Kafka在这方面是如何来设计做到高效的呢?Kafka这款分布式消息队列使用文件系统和操作系统的页缓存(page cache)...
一、背景 随着用户量级的快速增长,vivo 官方商城 v1.0 的单体架构逐渐暴露出弊端:模块愈发臃肿、开发效率低下、性能出现瓶颈、系统维护困难。 从2017年开始启动的 v...
在前一篇的文章《HotSpot垃圾回收算法概述》里面,对于Serial, Parallel和CMS几种垃圾回收器做了比较详细的描述。但是对于G1的叙述是比较粗糙的。这篇文章则...
引言 在内存管理中,垃圾是指那些不再被使用的对象。对于一个垃圾回收器(Garbage Collector),它需要完成三件事: 分配内存:垃圾回收算法的设计往往制约了内存分配...
0. 前言 对于大部分搜索系统而言,都会有搜索提示功能,即输入一个词,会提示拥有该词/前缀词的信息,而elasticsearch的suggest能较好地支持该功能 sugge...
1.前言 在使用ES进行中文搜索时,分词的效果直接影响搜索的结果。对于没有能力自研分词,或者一般的使用场景,都会使用ik分词器作为分词插件。ik分词器的基本使用可以参考: E...
现在我们在用JAVA做ES应用开发的时候,通常会使用RestHighLevelClient来进行发送请求,早期没有RestHighLevelClient的时候,是直接使用Tr...
1.源码下载 从github仓库fork代码到自己的仓库 https://github.com/netty/netty,然后clone到本地。由于netty用maven进行项...
Nacos 另一个非常重要的特性就是服务注册与发现,说到服务的注册与发现相信大家应该都不陌生,在微服务盛行的今天,服务是非常重要的,而在 Nacos 中服务更被称为他的一等公...
前言 最近在看sentinel的一些资料和代码,github请参见这个网址,看过代码之后感觉sentinel在限流熔断上相较于Hystrix可能会更好一点,一方面是他没有用多...
1. 一个简单的索引请求示例 首先,我们来看一个索引请求: 这个请求的主要作用是向item索引中添加一个索引文档,文档信息:文档 id: 28589790字段id: 2858...
本篇为elasticsearch源码分析系列文章的第二篇,由于技术不精,而叙述的不好或不对的地方还请大家指出 ^ _ ^!!! 源码主要模块 distribution:ela...
在使用Elasticsearch进行全文搜索的时候,默认是使用BM25计算的_score字段进行降序排序的。当我们需要用其他字段进行降序或者升序排序的时候,可以使用sort字...
1.概述 我们在使用Elasticsearch做搜索引擎的时候有可能会遇到跨domain查询的场景,比如做一个学生课程管理系统,搜一个学生的名字,像知道该学生的选课情况。当然...
1.概述 Elasticsearch主要的查询语法包括URI查询和body查询,URI比较轻便快速,而body查询作为一种json的格式化查询,可以有许多限制条件。本文主要介...
1.ES分词简介 Elasticsearch是基于倒排索引来实现搜索功能,而倒排索引的基础就是分词。因此分词对于学习Elasticsearch是绕不过去的。Elasticse...