发布了文章2020-09-29
ES内置的token filter很多,大部分实际工作中都用不到。这段时间准备ES认证工程师的考试,备考的时候需要熟悉这些不常用的filter。ES官方对一些filter只是一笔带过,我就想着把备考的笔记整理成博客备忘,也希望能帮助到有这方面需求的人。
发布了文章2020-09-14
有一个问题被关注的比较少,就是ES对本地磁盘的占用情况。有人可能觉得这个问题的答案显而易见,不就是ES软件本身占用的空间,还有索引数据持久化占用的磁盘空间,另外就是一些日志了。
发布了文章2020-09-10
es存储的某一个字段值为数组,现搜索的时候需要搜索出结果该字段值为空或包含某几个值的数据,该怎么写例如: "job_type" : ["12","49","67"] 或者 "job_type" : [ ]需要搜出job_type中包含49的或者为空的数据
发布了文章2020-09-09
Elasticsearch(以下简称ES)有个copy_to的功能,之前在一个项目中用到,感觉像是发现了一个神器。这个东西并不是像有些人说的是个语法糖。它用好了不但能提高检索的效率,还可以简化查询语句。
发布了文章2020-09-09
代码很好理解,为每一个新来的连接创建一个线程处理。这种方式有个比较大的问题是,客户端连接数受限于服务器所能承受的线程数。为了改进这个问题我们可以使用异步模式来重写这段代码,但是你会发现,几乎所有的代码都要重写。原生的OIO和NIO的API几乎完全不能复用。...
发布了文章2020-08-30
【netty in action】学习笔记-第二章 编写你的第一个netty程序这一章简单粗暴,整个章节都是讲一个例子,例子很简单,但是麻雀虽小五脏俱全。通过这个示例你会对编写基于netty的应用程序有个直观的认识。我先上代码,后面再分析。先看看服务端的示例, {代码...} {代...
发布了文章2020-08-29
java nio有nio和nio2两个版本,后者只支持jdk7。而且java nio本身属于比较low level的api,有时候会遇到在linux运行良好但是在windows上却有问题。
发布了文章2020-08-29
【netty in action】学习笔记-第一章 了解java NIO(1)学习netty,java nio是基础,因为前者是对后者的封装,当然又不只是封装。随着学习的深入你会理解这句话的含义。下图是netty的架构图,让你对netty涉及的模型,传输,协议有个基本印象。netty的特性可以总结为...
发布了文章2020-08-16
使用elasticsearch(以下简称ES)也有挺长时间了,一直想找机会深入源码研究下。我看源码有个习惯,就是一定要运行起来。不是只把源码下载下来看看就行的。
发布了文章2020-07-08
千万不要小看代码细节的优化,有时候一个很小的优化就要你的代码执行效率数倍提升,如果这个优化点调用比较频繁,甚至有可能解决你整个系统的性能瓶颈。
发布了文章2020-06-27
Elasticsearch(以下简称ES)并不像mysql这么容易上手,很多java程序员会觉得ES的java客户端比较难以掌握,尽管ES 7.x官方推荐的high level client已经相对于早期的TransportClient好用很多了。
发布了文章2020-06-13
kafka的生产者可以选择使用异步方式发送数据,所谓异步方式,就是我们调用 send() 方法,并指定一个回调函数, 服务器在返回响应时调用该函数。
发布了文章2020-05-30
我本人接触Elasticsearch(一下简称ES)有挺长一段时间了,本文结合自己的一些项目经验,给你总结几个实际项目中比较容易踩到的坑。希望读者能够避免犯这样的错误。
发布了文章2020-05-11
Elasticsearch(下面简称ES)中的bool查询在业务中使用也是比较多的。在一些非实时的分页查询,导出的场景,我们经常使用bool查询组合各种查询条件。
发布了文章2020-05-05
引言 很多认为Elasticsearch(以下简称ES),同一个分片的主分片和副本分片文档数量肯定是样的,数据大小也是一样的。 这个其实值说对了一半,文档数量是一阳台的没错,但是数据大小不一定一样。 产生这种现象的原因在于,主分片和副本分片的segment数量可能不一样。 ...
发布了文章2020-05-03
引言 我曾经写过一篇文章 fastjson远程代码执行漏洞问题分析 文章曾经比较详细分析了fastjson在1.2.24以及之前版本存在远程代码执行高危安全漏洞的问题。 本文则是针对另一个漏洞的介绍和分析。 官方对这次漏洞的说明是这样的: 近日,阿里云应急响应中心监测到fastj...
赞了文章2020-05-03
最近研究了HTML5一些新的元素属性,发现确实好用,特别是里面的Canvas这个新的标签元素。官方介绍:Canvas API(画布)是在HTML5中新增的标签用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图(bitmap)。以下使用JavaScrip...
发布了文章2020-05-02
kibana是elasticsearch(以下简称ES)的可视化平台,笔者平时使用kibana的dev tools比较多,在这里可以更便捷的使用ES的各种命令,DSL查询语句等。
发布了文章2020-04-03
1、引言 有人可能觉得,查看文档数量不是很简单吗?直接 {代码...} 不就可以了吗。 事实上远不止这么简单,比如嵌套文档的情况等。相信你看了我这篇文章之后你会感叹原来统计文档有这么多讲究啊。 2、正文 cat/count 首先是最常用的的方式,也是一种快速查询文档的优...
发布了文章2020-03-26
ElasticsSearch(以下简称ES)处理这种关系虽然不是特别擅长(相对于关系型数据库),因为ES和大多数 NoSQL 数据库类似,是扁平化的存储结构。索引是独立文档的集合体。不同的索引之间一般是没有关系的。