【ELK】中文分词器相关
这里将中文检索中常用的分词器总结下,包括:IK分词器和拼音分词器。
这里将中文检索中常用的分词器总结下,包括: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
版本
项目使用到了基于Netty
的长连接,最近有一次活动,线上存在大流量,活动开始后的一段时间,各个指标正常,但是一段时间后就出现了部分用户无法连接上 WebSocket
,需要重试多次才能连接。
首先来看看项目背景:
Netty
作为Websocket
的底层,Netty
的性能不需要质疑。Nginx
作为代理,将Websocket
升级到wss
,Nginx
的性能也不需要质疑。所以整体来说就是:流量先打到了Nginx
再通过他转发到了Netty
的Websocket
。
Redis + son 意思很明显,自诩 Redis 的儿子,不过也确实好用
这篇文章来介绍下可能不那么常见的,但是却非常好用的 3 个东西:BitSet/Bloomfilter/HperLogLog