0%

背景

最近在搭建一个Spring Cloud的项目,在搭建途中,遇到了一些问题,这里记录一下。
在搭建AuthorizationServer的时候,就遇到了问题,我的授权模式是用的password模式,然后是集成了JWT生成access_token。

基本上我是参照这个项目搭建的,https://gitee.com/log4j/pig 。不过因为只是参考,所以我还做了一些改动,而且我们Spring Cloud的版本也不一样,我是F版的。

阅读全文 »

背景

今天同事说在Hystrix的执行方法里打印日志的时候,Sleuth的traceId丢失了,产生了新的traceId,我第一反应是难道是因为Hystrix采用的是线程隔离模式,所以导致sleuth在线程切换的时候丢失了traceId吗?但是我记得Sleuth是针对是Hystrix处理过的,具体的处理的类就是SleuthHystrixConcurrencyStrategy。Spring Cloud Sleuth专门对Hystrix处理过线程切换上下文传递的问题。

阅读全文 »

Zuul 修改URI

背景

最近项目中有一个需求,因为系统要进行重构,所以在重构期间网关需要判断URL请求的是老系统还是新系统。如果请求的是老系统那么就需要根据URL和参数在网关层对进行转换,也就是要修改成新系统的URL,并转发到新系统上去。如果请求的是新系统,那么则不做处理,进行相应的鉴权操作。

阅读全文 »

倒排索引

如何使文本被搜索到是搜索引擎很重要的一部分,倒排索引是很适合搜索的。

因为它的结构:

  1. 包含这个关键词的document list
  2. 包含这个关键词的所有document的数量:IDFinverse document frequency.
  3. 这个关键词在每个document中出现的次数:TFterm frequency.
    阅读全文 »

此为龙果学院课程学习笔记,记录以后翻看

索引管理

手动创建索引

之前都是直接插入document,ES为我们自动创建索引。其实在大部分情况下,我们是需要自己先手动创建mapping的,就像数据库建表一样,你可能需要设置primary shard的数量,字段的分词器,具体的数据类型等等。

阅读全文 »

此为龙果学院课程学习笔记,记录以后翻看

前面讲了简单的搜索、分词和映射,这篇文章讲ES的搜索API

search API

Search API的基本语法:

这是一个空查询,空查询将返回所有索引库(indices)中的所有文档:

1
2
GET /_search
{}
阅读全文 »

此为龙果学院课程学习笔记,记录以后翻看

前面讲了Document的增删改查和集群原理,接下来就是ES的重头戏了,搜索。

_search结果解析

当发出一个搜索请求的时候,会拿到很多结果,下面说一下搜索结果里的各种数据,都代表了什么含义。

阅读全文 »

此为龙果学院课程学习笔记,记录以后翻看

Document元数据

_index元数据

  1. 代表一个document存放在哪个index中。
  2. 类似的数据放在一个索引,非类似的数据放不同索引:product index(包含了所有的商品),sales index(包含了所有的商品销售数据),inventory index(包含了所有库存相关的数据)。如果你把比如product,sales,human resource(employee),全都放在一个大的index里面,比如company index,就不合适。
    阅读全文 »