Laradock-elasticsearch配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laradock-elasticsearch配置相关的知识,希望对你有一定的参考价值。
参考技术A laradock 中支持 Elasticsearch,直接搭建就可以,省去了诸多麻烦全文搜索是很重要的功能,实现的方式也有很多种。以下通过 Laravel Scout 和 Elasticsearch 实现。先来看下各自的介绍
Laravel Scout 为 Eloquent 模型全文搜索实现提供了简单的、基于驱动的解决方案。通过使用模型观察者,Scout 会自动同步更新模型记录的索引。
Elasticsearch是一个基于Lucene库的搜索引擎。它提供了一个分布式、支持多租户的全文搜索引擎,具有HTTP Web接口和无模式 JSON 文档。Elasticsearch是用 Java 开发的,并在 Apache 许可证下作为开源软件发布。官方客户端在Java、.NET(C#)、 php 、 Python 、Apache Groovy、 Ruby 和许多其他语言中都是可用的。[5]根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。
新建 fake_articles 用来测试
新建模型以及数据迁移 php artisan make:model Models/FakeArticle -m
在数据迁移中 database/migrations/2019_06_13_095420_create_fake_articles_table.php 编辑如下
运行迁移 php artisan migrate
新建数据填充 php artisan make:seeder FakeArticlesSeeder
填充几条中文数据,以便后续测试
运行填充 php artisan db:seed --class=FakeArticlesSeeder
修改 app/Models/FakeArticle.php 文件如下
这一步是花费时间最多的地方,查的资料要么是过时的,要么根本不能运行。最终根据这篇 文章 修改而来。
关于 ik 分词以及 ik_max_word 和 ik_smart 的区别,不在这里赘述了,可以看下这篇 文章 。
新建文件 php artisan make:command InitEs ,编辑如下
[图片上传失败...(image-13bc2c-1576134718365)]
测试后没有问题,可以正常搜索。更多的方法参考 这里 。
参考资料: Elastic Driver for Laravel Scout 、 Laravel Scout + Elasticsearch + ik 分词
以上是关于Laradock-elasticsearch配置的主要内容,如果未能解决你的问题,请参考以下文章
WINDOWS 7如何安装myeclipse6.0 GA E3.3.1和配置环境变量