Laravel 使用 Elasticsearch 全域性搜尋

曉軒發表於2019-04-17

最近一直在研究 全文搜尋 在github上面找到好多,下面做一下比較:

第一種方案是 laravel-scout-elastic ;
這種基於 scout 的;
好處我們上篇文章已經寫了;
增刪改操作後自動更新索引;
配置起來也簡單方便;
可以非常方便的在各種基於 scout 搜尋方案間切換;
但是它並不理解東方神祕的方塊字;
不能自定義分詞器;
也不能愉快的完成中文搜尋功能;

另一種是 Elasticquent ;
這種是獨立於 scout 的;
它提供了符合 laravel 風格的操作索引的 api ;
並且和模型結合在了一起可以方便的進行搜尋;
可以自定義分詞愉快的中文搜尋了;
但是結合的不像 scout 那樣緊密;
對資料庫增刪改後還需要手動同步對索引進行相同的操作;
想便捷點也需要自己繫結監聽增刪改的事件;

第三種是開箱即用還支援中文搜尋的方案baijunyao/laravel-scout-elasticsearch 橫空出世;

本作品採用《CC 協議》,轉載必須註明作者和本文連結

不要輕易放棄。學習成長的路上,我們長路漫漫,只因學無止境

Don't give up easily. On the way of learning and growing up, we have a long way to go, just because there is no end to learning.

相關文章