我有一個使用在Heorku上運行的Spring + JPA + Hibernate構建的應用程序,並且我使用Hibernate-Search for FullTextSearch。在我的本地機器上,我將索引存儲在文件系統上。我在persistence.xml中進行配置。在Herku上進行休眠搜索
<property name="hibernate.search.default.directory_provider"
value="filesystem"/>
<property name="hibernate.search.default.indexBase"
value="/opt/lucene/indexes"/>
的Heroku只讀訪問文件系統,然後我索引存儲在內存中,但它是沒有最好的方法,因爲索引丟失服務器實例重新啓動時。如何最好的方式來做到這一點?有一種方法可以將Hibernate搜索與WebSolr或其他功能集成在一起嗎?
Heroku沒有隻讀文件系統(在Cedar上);因爲多個節點可能會失去同步,所以只能對寫入文件系統感到沮喪。如果您確定索引將在每個節點上以相同方式生成,或者在每個節點上具有不同索引並不成問題,那麼您可以寫入文件系統。儘管如此,我仍然贊成將你的應用程序連接到Heroku的許多優秀搜索插件之一的方法。 –
Heroku有一個短暫的文件系統,「這意味着你不能動態地寫入文件系統進行半永久存儲」。搜索的附加組件可以與hibernate搜索集成嗎? – maykoone
是的,也忘了提及ti的短暫,所以你將不得不重新索引每次啓動。不幸的是,我不確定如何將Hibernate連接到其中一個附加組件,而不是連接其他系統,所以希望有人會對該信息留下正確的答案。 –