如同磁铁吸引四周的铁粉,热情也能吸引周围的人,改变周围的情况。

Elasticsearch 极限网关测试版本发布

资讯动态 | 作者 medcl | 发布于2020年12月04日 | | 阅读数:7096

感谢以下社区同学提供的试用报告与经验分享:

 
 
每日构建:http://release.elasticsearch.cn/
镜像地址:https://hub.docker.com/r/infinilabs/gateway
文档手册:https://极限网关.com
 
目前提供的功能:
  • 索引级别的请求限速
  • 重复请求可以缓存
  • Kibana 无缝提速
  • Elasticsearch 节点自动发现
  • 基于权重的节点选择,权重可配置
  • 可控制到每个后端节点的最大连接数
  • 查询日志统计分析,用于追踪请求排错审计


性能优异,经过测试,比 Nginx 都更胜一筹。
[root@XXX-ES-01 linux64]# ./esm -s https://elastic:pass@xx.xx.cn:9343 -d https://elastic:pass@xx.xx.cn:8000 -x medcl2 -y medcl23 -r -w 200 --sliced_scroll_size=40 -b 10 -t=30m
[11-12 22:09:38] [INF] [main.go:461,main] start data migration..
Scroll 20377840 / 20387840 99.95% 1m20s
Bulk 20371785 / 20387840 99.92% 1m53s
[11-12 22:11:32] [INF] [main.go:492,main] data migration finished.

使用 ESM 进行集群的一个 2千多万的索引数据进行导入导出,分别走 Nginx 和 Elasticsearch 网关,网关和 Nginx 都部署在同一台16 核 32GB 的机器上,16 核全部跑满,Nginx 可以达到 20w/s,网关可以达到 25w/s。

101124056-2f4ffa00-3631-11eb-988d-ac4d6177a749.jpg

 
Kibana 走网关可以降低重复请求,缓存常见查询,起到查询加速的效果,如下:

Jietu20201205-161628.jpg

 
演示视频:https://v.qq.com/x/page/e3209mhh9kj.html
索引级别的限速限流,给后端 ES 稳稳的幸福。
 
551607156558_.pic_.jpg

可以开启请求日志,用来分析 ES 查询情况,如下:
 
Jietu20201205-194317.jpg


Jietu20201205-194359.jpg

 
追求性能极限,此网关名为极限网关(INFINI Gateway)
欢迎帮忙测试,提供反馈意见。

[尊重社区原创,转载请保留或注明出处]
本文地址:http://searchkit.cn/article/14165


11 个评论

请问大神这个网关程序如何部署?如何配置?如何启动?没找到相关文档
感谢大大出品,你这个连个使用说明都没有,限速原理和nginx 限速一样? kibana 加速时缓存什么部分,msearch 总不能缓存吧,能缓存的es 都缓存了,可控制到每个后端节点的最大连接数意义在哪里?
配置文件比较简单,一看应该就明白,里面有注释的,说明文档还没时间弄,晚点吧,不过已经有社区小伙伴分享了,可以去看看:https://elasticsearch.cn/article/14173 👍,限速主要是基于 Bucket 来实现的,kibana 加速主要是加速最终查询,你试一下就知道,限速和控制后端连接数都是在大集群的场景下,避免对后端集群造成突发流量冲击的手段。
kibana 加速主要是加速最终查询,最终查询不就是 msearch 发给es 么。主要想学习下原理
Kibana 加速做了两件事情:
1. 重复请求缓存;
2.查询条件改写,比如时间参数,会把 Now() 当前按特定精度取整(可配),对于 Dashboard 来说,也不需要这么高精度,适当缓存可以提升响应速度,降低后端 ES 压力。效果杠杠的。看文章里面的演示视频就知道了。
网关的kibana监控视图这个能分享。。。用网关,weights这个里面配置的ip+port 是不是集群的,elasticsearch配置下的endpoint,是不是网关写日志的集群,我配置了两个不同的。。这么理解的,这样配置,访问8000端口,结果访问的是endpoint的集群。
Dashboard 在这里下载:https://github.com/medcl/infini-gateway/releases/tag/1.1.0_SNAPSHOT weights 里面是指定后端集群节点的权重的,不指定默认都是 1,也就是流量均分;需要开启 discover 才能自动发现后端集群,参加最新版本的配置样例。最新的快照下载在这里:http://release.elasticsearch.cn/
11111
111
1111
xet5

要回复文章请先登录注册