2011-04-19 68 views
9

我正在構建一個將在Heroku上託管的Rails 3應用程序。Heroku上的文本搜索Rails 3 - Texticle vs acts_as_tsearch vs acts_as_indexed

要實現全文檢索,這些都是我所遇到的免費替代品:

Texticle

acts_as_tsearch

acts_as_indexed

我的應用程序將是密集與數據很多閱讀和寫作。搜索也將被用於很多。

搜索將跨越不同的模型。

哪一個在性能和縮放比方面最好?

有沒有其他免費的和更好的選擇?

是不是更好地去IndexTank或WebSolr(即Heroku recommends)呢?

在此先感謝!

+9

我只能評論acts_as_indexed,因爲我是開發者。在縮放方面,由於AAI沒有共享文件系統,因此AAI永遠不會與多個Heroku Dyno達成一致。這對大多數人來說並不是問題,但在某些情況下可能會成爲問題。如果你想在Heroku上實現真正的可擴展性,那麼IndexTank和WebSolr是最好的選擇。 – 2011-04-19 11:23:55

+0

感謝道格拉斯的迴應。是否有可能使用acts_as_indexed開頭?當我想要擴展我的應用程序時,我切換到IndexTank或WebSolr? – 2011-04-20 11:30:30

+0

是的,這是我通常向人們推薦的。 – 2011-04-20 13:19:50

回答

0

我會推薦使用WebSolr。這是一個基於Apache Solr的企業級搜索系統,它可以處理數以百萬計的索引文檔,而不會冒出汗來。此外,Solr允許你爲你的數據定義一個定製的結構,而不是強迫你進行簡單的FULLTEXT搜索。它提供了額外的功能,例如多面搜索和拼寫校正。

如果你不想支付Solr的,你可以自己託管它,因爲它是開源: http://lucene.apache.org/solr/

至於你所提到的,如果你是做搜索的大量的替代品,我不會使用任何依賴於您的應用程序數據庫來進行全文搜索的東西 - 這是一個非縮放的業餘解決方案。

0

Heroku recommends using an add-on提供全文搜索。這爲您的應用程序提供了最佳的性能,可擴展性和易用性。有兩種全文搜索附件:IndexTankWebsolr

+0

Indextank鏈接不再運作,我也無法在Heroku插件列表中找到IndexTank,他們是否拿下它,還是他們改名?我似乎也無法訪問他們的網站。 – Cninroh 2012-11-09 12:47:20