2009-12-13 52 views
2

我在Heroku上部署了一個Ruby on Rails應用程序,並且我意識到他們有一個只讀文件系統(http://docs.heroku.com/constraints#read-only-filesystem)。這意味着我無法在本地緩存圖像,例如。我正在使用名爲「Rio」(Ruby Input/Output)的Ruby gem,並且允許將文件保存到我的/ public/images目錄。有沒有這樣的好主持人?具體來說,我正在研究Rackspace Cloud。在我嘗試部署到其他地方之前,事先真的有助於瞭解它們!RackSpace是否具有讀寫文件系統?

回答

0

您不需要切換主機來完成此操作。

使用Heroku,您可以寫入RAILS_ROOT/tmp目錄。他們只是不能保證在請求之間停留,因爲不同的請求可能來自不同的dynos,並且tmp目錄被定期清除。所以你可以將你的圖像提取到那個目錄,做任何你需要的處理,然後把它們上傳到S3(如果你還沒有使用它,我推薦Delayed :: Job)。

+0

我最終這樣做了,謝謝! – jmtame 2009-12-15 19:01:37

1

我只是谷歌搜索「免費紅寶石託管」,並有很多很多的結果。我會建議通過其中一些看看。

更新:我剛剛意識到Heroku出現在列表的頂部,但也有很多其他人。

我承認我沒有足夠的努力來檢查每一個,看看他們是否讓你寫入他們的文件系統。

我認爲沒有必要在「雲」產品之後爭搶。 「雲」解決了你還沒有的問題(還)。 「雲」會讓你的應用程序「無限」擴展,如果你把它變大,你的網站會得到SlashDotted或其他任何東西。

您正在尋找的是便宜的免費託管,這是由提供商提供的「做」虛擬主機(讓很多人在一個物理盒子上削減每個成本)或免費爲窮人託管開源開發者。

+0

嗨,卡爾,謝謝你的迴應。我會說,所有這些,小橙看起來很有趣。沒有太多空間,但我相信可以升級。感謝這裏的建議。 – jmtame 2009-12-13 12:10:20

1

一個解決方案,如果你想使用Heroku將不會在他們的地方舉辦的圖像。但在亞馬遜。
您的應用程序可以對圖像執行必要的操作,然後在Amazon S3平臺上發送它們。
然後當你想顯示一個圖像,你可以鏈接到它在亞馬遜。

Paperclip允許您很容易地將圖像發送到S3。

+0

嘿達米安,就像後續,我不想處理文件附件。我正在遠程獲取圖像,然後將它們存儲在服務器上(當然合法)。我有點擔心通過S3遠程發送圖像(以及遠程獲取圖像)涉及多少工作。 – jmtame 2009-12-13 12:09:49

+0

看看回形針。你會看到工作量並不大。 – 2009-12-13 13:22:38

0

我不確定有關heroku,但回答你關於Rackspace cloudFiles的問題,沒有任何塊存儲暴露cloudfiles,但只是一個API上傳/檢索/等等...文件。

有心思一些保險絲包裝那樣會暴露你的雲文件,至少在Linux/MacOSX的文件系統:

https://github.com/redbo/cloudfuse/

有JungleDisk以及它擰緊至cloudfiles,但它是一個整體的完整基礎設施。

相關問題