摘要:
Java从JDK1.5开始支持枚举,也就是说,Java一开始是不支持枚举的,就像泛型一样,都是JDK1.5才加入的新特性。通常一个特性如果在一开始没有提供,在语言发展后期才添加,会遇到一个问题,就是向后兼容性的问题。像Java在1.5中引入的很多特性,为了向后兼容,编译器会帮我们写的源代码做很多事情 阅读全文
摘要:
前言Elasticsearch 存储的基本单元是shard, ES中一个Index 可能分为多个shard, 事实上每个shard 都是一个Lucence 的Index,并且每个Lucence Index 由多个Segment组成, 每个Segment事实上是一些倒排索引的集合, 每次创建一个新的D 阅读全文
摘要:
java validation内没有对枚举的校验工具,但是离散的枚举值校验确实是有必要的,这里列两种枚举的校验方法,实际大同小异。首先,javax.validation包是提供了方便的自定义校验的入口的,就是javax.validation.ConstraintValidator。1. 对离散值(非 阅读全文
摘要:
注解概念:Java 注解(Annotation),是 JDK5.0 引入的一种注释机制。Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。注解可以被看作是对一个类/方法的一个扩展的模版,按照注解类中的规则,处理不同的逻 阅读全文
摘要:
主分片修改不了(创建的时候已经确定了),副本分片可以修改数量 写流程:协调节点--》请求转换到指定的节点--》主分片保存数据--》主分片需要将数据发送副本-->副本保存后,进行反馈,主分片进行反馈--客户端获取反馈 读流程:客户端发送查询请求到协调节点,协调节点计算数据所在的分片以及全部的副本位置s 阅读全文
摘要:
至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大环境下,DDD似乎是一种比较“古老而缓慢”的思想。然而,由于互联网公司也逐渐深 阅读全文
摘要:
(一) 强引用(StrongReference)强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下: Object strongReference = new Object(); 当内存空间不足时,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终 阅读全文
摘要:
SearchSearch执行的时候实际上是分为两个步骤运作的:Query 和 Fetch。Query阶段 Fetch 排序es默认采用相关性算分排序,用户可以通过设定sorting参数来自行设定排序规则。 GET book/_search { "query": { "bool": { "must": 阅读全文
摘要:
一、Query CacheQuery Cache也称为Filter Cache,顾名思义它的作用就是对一个查询中包含的过滤器执行结果进行缓存。比如我们常用的term,terms,range过滤器都会在满足某种条件后被缓存,注意,这里的bool过滤器是不会被缓存的,但bool过滤器包含的子query 阅读全文
摘要:
安装说明,安装三个节点,一个master ,两个slave。集群名称 ip-端口myEsCluster (master) 127.0.0.1:9500myEsCluster(slave) 127.0.0.1:9600myEsCluster(slave) 127.0.0.1:9700 集群名称ip-端 阅读全文