Elastic中的映射与分析

Elastic中的mapping设置,主要是为了能够使搜索更加准确,其中的内容包括:哪些字段是需要分词的?哪些字段是需要整体准确被搜索的?字段都使用什么分词算法?等等

1、测试分析器

GET www.129.com/_analyze?analyzer=standard&text=Text to analyze
GET www.129.com/_analyze?text=Text to analyze

继续阅读

Elastic常用的接口

1、集群 cluster

【get】http://www.129.com/_cluster/health?pretty  #查看集群状态
【get】http://www.129.com/_count  #查看集群中文档的记录数,可以增加条件q=description:品牌
【get】http://www.129.com/_search #查看集群中所有文档的数据,可以增加条件q=description:品牌
【get】http://www.129.com/_nodes  #查看node的信息

继续阅读

Elastic中的几个概念

这些名词概念按我个人的理解,可以区分为物理层概念和业务逻辑层概念。

  • 物理层概念 (physical layer)

  • 集群(cluster)
    一个ES集群由一个或多个节点(Node)组成,每个集群都有一个cluster name作为标识.
  • 节点(node)
    一个ES实例就是一个node,一个机器可以有多个实例,所以并不能说一台机器就是一个node,大多数情况下每个node运行在一个独立的环境或虚拟机上。节点等同于实例

继续阅读

Nginx中http_fastcgi_module的配置

1、fastcgi_bind

Syntax: fastcgi_bind address [transparent] | off;
Default: —
Context: http, server, location
指令在调用connect()函数之前将解析每个上游socket到一个本地地址,可以使用在主机拥有多个网卡接口或别名,但是你只允许到外的连接来自指定的网卡或者地址的情况下。

继续阅读

Nginx中http_core_module的配置

1、aio(异步IO)

Syntax: aio on | off | threads[=pool]; #不知道什么原因 on设置在1.11版本中,不可用
Default: aio off;
Context: http, server, location
  • 在linux平台下,nginx的aio和sendfile不能同时生效。
  • aio和sendfile同时开启的情况下,当请求的文件大小>= direction,aio生效,反之sendfile生效。
  • 对于大文件采用aio,节省cpu,而对于小文件,采用sendfile,减少拷贝;并且对于大文件aio采用directio,避免挤占文件系统缓存,让文件系统缓存更多的小文件。

继续阅读

Nginx Location配置总结

语法:location [=|~|~*|^~] /uri/ { … }
配置块:server

  • =表示将URI作为字符串,以便于参数中的URI做完全匹配。
  • ~表示匹配URI时,字母大小写是敏感的。
  • ~*表示匹配URI时,忽略字母大小写。
  • ^~表示匹配URI时,只需要前半部分与uri参数匹配即可。
  • @表示用于nginx服务器内部请求之间的重定向,带有@的location不直接处理用户请求。
  • uri参数可以使用正则表达式。
  • 使用locaiton / {}可以匹配所有的请求。
  • 首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。

继续阅读