0
点赞
收藏
分享

微信扫一扫

Elasticsearch-PHP+kibana 做搜索引擎 Laravel /thinkphp 中使用


1 搭建es kibana 环境,查看本博客:​​快速搭建ELK 集群日志收集工具Centos7 +Logstash +Elasticsearch+Kibana 环境​​ (只需要搭建 elasticsearch 和 kibana,如果不需要界面kibana ,只下载一个elasticsearch 也可以的)

2 搭建好环境之后如果是虚拟机,请配置允许外网访问
进入Elasticsearch 目录

cd config
vim elasticsearch.yml

添加:

network.host: 0.0.0.0

再次开启的时候,我是遇到了内存很low 的问题,​​点击查看​​如果没有这类问题,跳过

允许指定ip访问,默认只可以本地服务器可以访问。

3 进入php 目录下 thinkphp 或 laravel 目录下执行

composer require elasticsearch/elasticsearch

头部引入库

use Elasticsearch\ClientBuilder;

方法里编辑:

$client = ClientBuilder::create()->setHosts("http://127.0.0.2:9200")->build();
$param = [
'index' =>test,
'type' => test,
'id' => time(),//如果不写,系统自动生成唯一id
'body' =>['title'=>'测试'],
'client' => ['ignore' => 404] //忽略错误
];
$client ->index($param);

执行,如果没有报错,恭喜你成功了。在切换到kibana 设置索引:

Elasticsearch-PHP+kibana 做搜索引擎 Laravel /thinkphp 中使用_elasticsearch


点击下一步,再下一步。

Elasticsearch-PHP+kibana 做搜索引擎 Laravel /thinkphp 中使用_php_02


即可查看kibana 界面中,test索引的数据。

这边推荐一下官方demo

后面有空我会封装一些,类似 thinkphp 或 laravel 中的ORM ,条件查询es中的数据。

异步存入es查看:​​Future 模式​​

官方中文文档目录



  • ​​概述​​
  • ​​快速开始​​
  • ​​安装​​
  • ​​配置​​
  • ​​按请求配置​​
  • ​​Future 模式​​
  • ​​PHP 处理 JSON 数组或对象​​
  • ​​索引管理​​
  • ​​索引文档​​
  • ​​获取文档​​
  • ​​更新文档​​
  • ​​删除文档​​
  • ​​搜索操作​​
  • ​​命名空间​​
  • ​​安全​​
  • ​​连接池​​
  • ​​选择器​​
  • ​​序列化器​​
  • ​​PHP 版本需求​​
  • ​​Breaking changes from 5.x​​
  • ​​社区 DSLs​​
  • ​​Community Integrations​​
  • ​​Reference - Endpoints​​


举报

相关推荐

0 条评论