按类别归档

ElasticSearch

ElasticSearch 5.3源码学习 —— Segments_N 文件详解

少于 1 分钟 读完全文

概览 Lucene当前活跃的Segment都会存在一个Segment Info文件里,也就是segments_N。如果有多个segments_N,那么序号最大的就是最新的。 segments_N用SegmentInfos进行操作 segments_N由Header, LuceneVersion, V...

一起来学ES —— 浅谈Nested结构

1 分钟 读完全文

Nested是什么? 直观的说,Nested实际上就是Object的数组。如下,这个user就是个nested结构 { "user" : [ { "first" : "John", "last" : "Smith" }, { "first" : "Alice...

Kibana多租户方案

少于 1 分钟 读完全文

概览 Kibana是一个Elastic公司提供的,用于ElasticSearch数据可视化的工具,提供了数十种图表类型,并支持导出url供用户直接使用。另外Kibana还提供了在线查询,性能分析,数据时序分析等能力。不过Kibana并没有提供多租户能力,因此需要自行实现。 谈到租户隔离,我觉得就是三个方...

一起来学ES —— Bulk剖析

少于 1 分钟 读完全文

背景 Bulk请求是ES常用的一种multi-document请求,其处理比较复杂,之前一直搞不清请求的处理逻辑,今天就从源码入手,仔细剖析一下其执行逻辑。

Java

Nginx

信息检索

局部敏感哈希(Locality Sensitive Hashing)

少于 1 分钟 读完全文

前两天写完 Shingling 算法优化,总觉得这么机智的方法其背后一定还隐藏着什么共性的东西。 后来想了很久,突然觉得它做的事情好像和局部敏感 Hash相似,查了查资料,果不其然,就是 LSH 里最经典的 MinHash 之前一直都是听说过 LSH,但是一直不了解其具体内容,粗略看了一下,发现水还...

聪明的shingling

少于 1 分钟 读完全文

今天看书,看到了一个计算文档相似度的公式,一开始完全没看懂,后来看懂后发现这么机智,给大家分享下

倒排与列存

少于 1 分钟 读完全文

一直傻傻分不清倒排和列存,今天有空梳理一下,主要有四个概念要明确: 索引方式: 正向索引,反向索引(倒排) 存储方式: 行存,列存 数据结构: HashMap,B-Tree,BitMap… 存储结构: 顺序组...

前端

React根据宽度自适应高度

少于 1 分钟 读完全文

有时对于响应式布局,我们需要根据组件的宽度自适应高度。CSS无法实现这种动态变化,传统是用jQuery实现。 而在React中无需依赖于JQuery,实现相对比较简单,只要在DidMount后更改width即可 Try on Codepen 需要注意的是在resize时候也要同步变更,需要注册...

Node顺序执行Shell命令

少于 1 分钟 读完全文

今天写个小工具,其中有一步是用node执行shell,第一次写,以为也是同步执行于是就直接一个 for-exec

工具

Docker for Mac配置Sock5代理

少于 1 分钟 读完全文

今天需要用ES的镜像,发现Docker Hub的镜像已经废弃了,换成了docker.elastic.co镜像。 于是喜闻乐见得被墙了。。。 error pulling image configuration ... EOF 尝试了下SS的全局代理,发现没有用

RequestMap2Retrofit

少于 1 分钟 读完全文

最近写项目,各种Rest的接口调来调去,RequestMap总要反复写,服务发布方写一遍,调用方再写一遍,非常麻烦。 业界目前有JAX-RS,resteasy通过发布facade包来避免这个问题。但是无力推进所有服务方修改,所以写了个小脚本用来将RequestMap转换成Retrofit2的接口。 ...

架构设计

基于OpenResty的API网关设计

少于 1 分钟 读完全文

背景 OpenResty 是一个支持lua的nginx,并且内置了一些常用的lua库。利用lua,我们就可以便捷得扩展nginx能力,甚至可以直接作为Web服务对外提供。 主页链接 由下图可以看出,我们可以在各个阶段进行干预。

踩坑经验

一个 FastJSON 反序列化泛型的问题

少于 1 分钟 读完全文

问题描述 今天下午遇到一个反序列化泛型一直报错com.alibaba.fastjson.JSONObject cannot be cast to xxx的问题. 代码片段如下

运维小记

记一次UTF-8引发的宕机

少于 1 分钟 读完全文

原本以为今天是个风平浪静的周一,没想到下午一个报警打破了全部的宁静