引言
对于数据库查询,主键和索引往往是加速搜索的利器。而对于文本搜索, 模糊搜索,全文检索,MySQL的MyISAM引擎虽然支持,但是性能往往不能达到生产的需求, 或者说服务带载能力太弱。
我们需要专门的文本搜索引擎,并且连接到laravel应用程序内,这就是本文所要说的Scout。
代码时间
laravel scout 是一个独立的包和类库,可以很方便地通过composer接入系统, 且与Eloquent Model模型关联使用。
官方scout内置了 Algolia 和 Elasticsearch 驱动,但是社区也提供了其他可选项。 如果默认的话,优先选用的肯定是 Algolia。
laravel 5.3及以上版本为系统引入scout库:
composer require laravel/scout
然后在 config/app.php 文件内的 providers 服务提供者内加入如下内容:
'providers' => [
LaravelScoutScoutServiceProvider::class