簡體   English   中英

使用Elasticsearch,盆景將Rails應用程序部署到Heroku

[英]Deploying rails app to heroku with elasticsearch, bonsai

我已將應用程序推送到heroku,但是搜索功能存在功能問題。 我正在將ElasticSearch與Tire一起使用,以及用於Heroku的Bonsai插件。 我已經根據Bonsai的文檔創建了一個bonsai.rb初始化程序: https ://devcenter.heroku.com/articles/bonsai#installing-the-add-on

到目前為止看起來像這樣:

ENV['ELASTICSEARCH_URL'] = ENV['BONSAI_URL']

這是我嘗試運行搜索時從Heroku日志中獲取的錯誤:

Tire::Search::SearchRequestFailed (404 : {"error":"Index not found, and lazy index creation is disabled.

我以為Tyre會自動創建索引。 老實說,我對這些指標是什么還不清楚。 它們與我的開發數據庫中的索引相同嗎? 有誰知道部署具有這些功能的應用程序的好指南或教程? 提前致謝!

哦,多么酷-我可以成為第一個回答問題的人。 因此,我認為潛在的問題是,雖然Tire會自動創建索引,但在生產環境中卻不會這樣做。 如果按照Bonsai上Heroku頁面上的說明進行操作,則生產索引的名稱將不同於開發索引的名稱。 因此,您的生產索引將不包含文檔,因為Tire尚未設置它。

適用於我的解決方案在Config Tire上進行了描述, 可與Bonsai ElasticSearch Heroku附加組件一起使用

heroku run rake environment tire:import CLASS=School FORCE=true

CLASS變量的值將是模型的名稱,當然不是School

要回答第二個問題-“這些索引是什么”-它們是搜索索引,其功能類似於數據庫索引,但是

  • 存放在盆景的服務器上
  • 旨在允許基於關鍵字的“非結構化內容”快速檢索

這是什么是“搜索索引”的非常高級的摘要- 從此Wikipedia上有關搜索索引的文章開始以了解有關非結構化全文本搜索的奇妙世界的所有信息!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM