码迷,mamicode.com
首页 > 其他好文 > 详细

laravel 5.5 elasticsearch/elasticsearch 插件安装及使用

时间:2020-03-14 10:48:11      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:csharp   img   target   database   etl   public   ethos   cse   介绍   

为什么不用 Scout
  熟悉 Laravel 的同学,应该会有此疑问。Scout 是 Laravel 官方出的一个让 Eloquent 模型支持全文搜索的包,这个包封装好一批方法,通过这些方法就可以将数据索引到全文搜索引擎中、以及使用关键字从搜索引擎搜索文档。这个包适用于一些简单的搜索场景,比如博客文章搜索,但无法发挥出全文搜索引擎全部威力,像 Elasticsearch 这种重量级的搜索引擎有无数种查询语句,例如 我们should 语句、模糊查询、分片查询等,根本不是 Scout 几个简单的方法能够覆盖的,也就无法满足电商系统搜索模块的需求。

一、安装 elasticsearch/elasticsearch  

       包详细介绍:https://packagist.org/packages/elasticsearch/elasticsearch

     1):安装(请根据elasticsearch 版本安装对应的包)

composer require elasticsearch/elasticsearch ‘~7.0‘

  2)配置

       在.env文件中增加一行: ES_HOSTS=localhost

       在config/database.config 增加

 

‘elasticsearch‘ => [
        // Elasticsearch 支持多台服务器负载均衡,因此这里是一个数组
        ‘hosts‘ => explode(‘,‘, env(‘ES_HOSTS‘)),
    ]

     修改 app/Providers/AppServiceProvider.php 文件

        

  use Elasticsearch\ClientBuilder as ElasticBuilder;
 。。。。。。。。。。。

  public function register()
    {
        $this->app->singleton(‘es‘,function()
        {
           $bulider=ElasticBuilder::create()->setHosts(config(‘database.elasticsearch.hosts‘));
           if(app()->environment()==‘local‘)
           {
               //配置日志,Elasticsearch 的请求和返回数据将打印到日志文件中,方便我们调试
                $bulider->setLogger(app(‘log‘));
           }
           return $bulider->build();
        });
    }

  3)测试

           输入 php artisan tinker 进入测试模式输入: app(‘es‘)->info()

技术图片


 

laravel 5.5 elasticsearch/elasticsearch 插件安装及使用

标签:csharp   img   target   database   etl   public   ethos   cse   介绍   

原文地址:https://www.cnblogs.com/fogwang/p/12490730.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!