array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 Elasticsearch 5.5.1 的安装与配置 - 爱码网

ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。

安装 Java

ES 需要 Java 6 或更高版本,但建议安装 Java 7 及以上版本。

安装 ES

安装 ES 特别方便,下载 ES 安装包后,直接解压即可。这里下载的是截止目前的最新版本 elasticsearch-5.1.1.zip,直接解压到 D 盘根目录,如下图:

Elasticsearch 5.5.1 的安装与配置

ES 目录结构

Elasticsearch 5.5.1 的安装与配置

ES 配置与运行

打开 ES 配置文件目录 config,可以看到有个名称为 elasticsearch.yml 的配置文件,打开该文件并修改如下:

Elasticsearch 5.5.1 的安装与配置

其中,集群名称用来区分不同的集群,配置相同集群名字的节点则属于同一个集群,节点名称用来标识集群中的一个节点。

进入 ES 脚本目录 bin,根据操作系统来运行不同的脚本命令,Window 下为双击 elasticsearch.bat,Linux 下为 ./elasticsearch。

这里在 Window 下运行,如果双击后没有任何反应,查看服务也没有启动,则说明有错误,但好像这个版本没有 log 文件生成,目前不知道为何。所以可以通过命令行去执行 elasticsearch.bat,如图:

Elasticsearch 5.5.1 的安装与配置

可以看到没有足够空间的错误导致没法启动 Java 虚拟机,故而导致 ES 无法启动,所以这里需要设定一下关联到单个 ES 实例的 JVM 的堆内存限制,对于小型部署来说默认内存限制 1024M 足够,但如果是大型应用则需要设置的更大一些,但通常不应该分配超过系统总内存的 50%。

可是查完配置文件后,配置文件中配置的是 2G,配置为 4G 同样报这个错误,是不是因为太大的缘故,所以修改为 1G,该错误消失。配置如图:

Elasticsearch 5.5.1 的安装与配置

再次运行命令,报错如下:

Elasticsearch 5.5.1 的安装与配置

这是因为较高版本的 JDK 编译的 Java class 文件试图在较低版本的 JVM 上运行产生的错误,我电脑默认配置的 java 版本为 JDK7,所以我尝试了一下用 JDK8 的版本 jdk1.8.0_66 来运行,启动正常,配置 elasticsearch-5.1.1\bin\elasticsearch.bat 如下:

Elasticsearch 5.5.1 的安装与配置

看来随着 ES 版本的升级,编译时所需要的 JDK 版本也在一直上升,为了证实这一点,可以去官网说明文档中查看,果真如此,文档提示如下:

Elasticsearch requires at least Java 8. Specifically as of this writing, it is recommended that you use the Oracle JDK version 1.8.0_73.(ES至少需要Java 8,特别是在编写该文档时,建议使用Oracle JDK version 1.8.0_73版本。)

再次运行启动脚本,结果ES成功启动,如下图:

Elasticsearch 5.5.1 的安装与配置

为了进一步尝试启动是否成功,可以打开浏览器,输入http://localhost:9200/,如果出现下面的结果,则说明启动成功。

{
  "name" : "FC01",
  "cluster_name" : "FirstCluster",
  "cluster_uuid" : "jMJhGirhSRa9Iw2fQtjJ5A",
  "version" : {
    "number" : "5.1.1",
    "build_hash" : "5395e21",
    "build_date" : "2016-12-06T12:36:15.409Z",
    "build_snapshot" : false,
    "lucene_version" : "6.3.0"
  },
  "tagline" : "You Know, for Search"
}

至此,ES 服务器搭建成功。

但是有没有注意到,这是在前台运行,如果关闭了命令行窗口,则 ES 服务器会停止,照样访问不了,所以建议用后台启动方式,步骤如下:

首先安装ES服务器后台启动服务,如图:

Elasticsearch 5.5.1 的安装与配置

然后用后台方式启动ES服务器,如下:

Elasticsearch 5.5.1 的安装与配置

也可以直接在Window系统的服务列表中找到安装的服务,然后右键启动。

ES 交互工具

安装

与 ES 交互的主要接口是基于 HTTP 协议和 REST 的,可以用 WEB 浏览器来完成基本的查询和请求,对于复杂情况,则另外需要命令行工具,如 curl。

如果是 Linux 系统,curl 命令应该可以直接使用了,但对于 Windows 系统,则需要自己安装该工具。

备注:curl的官网地址为:https://curl.haxx.se/download.html

安装过程也很简单,下载 zip 包,解压到目录即可。这里下载的是 curl-7.52.1-win32-mingw 版本,也是目前最新版,直接解压到了 D 盘根目录。

命令测试

用检查集群健康度的命令来测试该工具是否好用:

Elasticsearch 5.5.1 的安装与配置

可以试试改变上面命令为如下,结果如何变化:

curl -XGET http://localhost:9200/_cluster/health

curl -XGET http://localhost:9200/

其它一些命令:

查看集群状态:curl -XGET http://localhost:9200/_cat/health?v
查看集群节点:curl -XGET http://localhost:9200/_cat/nodes?v
查询索引列表:curl -XGET http://localhost:9200/_cat/indices?v
创建索引:curl -XPUT http://localhost:9200/customer?pretty
查询索引:curl -XGET http://localhost:9200/customer/external/1?pretty
删除索引:curl -XDELETE http://localhost:9200/customer?pretty

ES 停服与重启

停止 ES 服务器

如果是前台启动,直接Ctrl+Z或者直接关掉命令行窗口,则服务器立即停止。

如果是通过后台启动的ES服务,则需要用如下命令停止服务器:

Elasticsearch 5.5.1 的安装与配置

也可以直接在 Window 系统的服务列表中找到安装的服务,然后右键停止。

另外,还可以通过 curl 工具来关掉整个集群或者集群中的指定节点,命令如下:

关掉集群:curl -XPOST http://localhost:9200/-cluster/nodes/_shutdown

关掉指定的节点,节点标识符为 jMJhGirhSRa9Iw2fQtjJ5A:curl -XPOST http://localhost:9200/_cluster/nodes/jMJhGirhSRa9Iw2fQtjJ5A/_shutdown

重启 ES 服务器

如果是想再次重启已经启动的 ES 服务,可以在 Window 系统的服务列表中找到安装的服务,然后右键重新启动即可。

相关文章: