【ELK】自定义分词器案例
自定义分词器的案例。
自定义分词器的案例。
Ngrom
这个分词器在对中文人名
、药品名
等检索的时候很犀利,无脑的将词分隔成成为几个字连接起来。
这里将中文检索中常用的分词器总结下,包括:IK分词器和拼音分词器。
简单总结下:Match搜索 的使用,感觉文章包含的内容会很多,持续总结中。
bool 搜索的常用格式,典型案例如下所示:
{
"bool": {
"must": { },
"must_not": { },
"should": { },
"filter": { }
}
}
bool 查询有2个规则很重要
简单概括下Elasticsearch的一些基本概念。
搜索从得分上来说可以分为 2 类,需要搜索得分和不需要搜索得分。
搜索得分可以看做是匹配度的高低,对于“固定值”
的搜索而言,通常不需要计算得分。其好处可以进行缓存,同时减轻服务器计算压力。
本章内容就是讲述固定值的搜索:Term 查询、范围 Range 查询、空值判定 Exists、
Term 查询通常用于:Keyword
关键字,Bool
类型,Date
日期类型、Number
数值类型等的查询
记录下,最近折腾 Jenkins遇到的问题。
之前文章有提到 jstat
的用处,当时的情形服务器发生了Metaspace
下的OOM
的情况,该情形下,dump 堆内存是没有用处的,因为Metaspace
不在Heap
下,而是在Non-Heap
中。
通常而言:
Non-Heap=Metaspace + JIT【不是所有的对象都是堆上】+ Native Method Allcatoted Heap + Code Cache + Threads...
MetaSpace=Non-Class space + Class Space
Class Space
主要是类的描述:Kclass/vtable/itable
当前负责项目前期只有几台服务器,一段时间是人肉运维,线下编码、测试、打包后通过工具打包到到服务,然后通过编写好的脚本进行启动和关闭。这种人肉运维的方式直到直到服务器数量扩充后,就显得低效而重复了。
这个时候刚好了解到阿里云提供的Devops
有一套流水线Flow
,其中有一个功能能解决自动化部署的问题。抽了时间从头了解了下,发现挺好用的,遂将线上版本发布改为了Flow
,这里记录下中间过程和踩得坑。
前段时间,发现线上某台服务器应用宕机了,分析了dump
的内存占用信息,并未发现异常。再去翻看日志的时候,发现了大量的Metasapce
的OOM
,并且触发了多次Old GC
,最后服务宕机。重启服务后,第二天又有一台服务器出现类似情况,当时服务还没有宕机,这里记录下当时用到的关于jstat
的指令。
最近阿里云不停的给我发邮件提醒服务器有漏洞,甚至安排了人工客服提醒我,不修复漏洞,可能导致服务器被攻击,而且已经有先例了。
我刚好趁着这次服务部署的机会,将服务器的CentOS
进行了更新以修复漏洞,其实过程还是蛮简单的。
我发现目前国内很多bypy
的安装都是在CentOS6
或者CentOS7
下的,因为我用的是CentOS8
,所以这里我将使用的命令整理后发布。
Skywalking
5.0 和6.0都写过安装记录,但是存储用的都是Elasticsearch
这次随着8.3
版本的更新,修改了之前版本的一些问题,也将存储改为了MySQL
,这里做下记录。
2020年12月02日 修改为
skwalking 8.3
版本
Skywalking
5.0 和6.0都写过安装记录,但是存储用的都是Elasticsearch
这次随着8.3
版本的更新,修改了之前版本的一些问题, 存储也替换为更为简单的MySQL
了,这里小小的做一个记录。
2020年12月02日 修改为
skwalking 8.3
版本