Rails アプリの全文検索に TS を使用しています。アプリに「最も検索された」タイプのリストを表示するために検索語を保存しようとしています。これが私の検索コントローラーのインデックス アクションです。検索機能を「保存」すると、検索に約 1.28 秒かかり、それがない場合は約 1.04 秒かかります。
いくつか質問があります。
1-検索に余分な時間を追加しないように、これを行うためのより良い方法はありますか?
2 - TS や Sphinx の標準的なベスト プラクティスに従う以外に、全文検索を高速化する一般的な最善の方法は何ですか?
ありがとう
def index
terms = params[:search_term]
terms ||= ""
if params[:city]
@search_results = Post.search terms, :conditions => {:city => params[:city]}, :page => params[:page] || 1, :per_page => Constants::LISTINGS_PER_PAGE
elsif params[:state]
@search_results = Post.search terms, :conditions => {:state => params[:state]}, :page => params[:page] || 1, :per_page => Constants::LISTINGS_PER_PAGE
else
@search_results = Post.search terms, :page => params[:page] || 1, :per_page => 3
end
# if @search_results.total_entries > 0
# Search.create(:term => terms)
# end
respond_to do |format|
format.html
format.js
end
end