2013-04-25 28 views
1

我正在使用Apple的iTunes EPF數據文件。我每天都需要下載,解壓,然後每天在.tbz文件中處理1-3GB的數據。下載和解壓Heroku和S3文件的流程?

我在Heroku上託管了一個Rails應用程序,大多數資產存儲都在S3上處理。

但是我遇到麻煩的是從蘋果獲取EPF文件的流程。

我將下載3個文件。每個.tbz文件的大小從1G​​B到大約20MB不等。

Heroku沒有可靠的存儲文件的方法,所以我假設我需要將文件直接下載到S3?那我會不會把它解開呢?

這就是我遇到障礙的地方。我知道如何從Apple和S3上獲取文件,但解壓縮它們是我沒有遵循的地方。

而且由於數據文件可能非常大,因此通過S3進行傳輸最小化對於降低成本至關重要。

有沒有可以讓我下載Apple文件到服務器的解壓縮服務,然後上傳到S3的必要文件?

回答

0

Heroku的file system is ephemeral,但你仍然可以寫出/tmp作爲臨時暫存空間來下載,解壓縮,做任何你需要的處理,重新打包(如果需要),然後上傳到S3。由於automatic dyno restarts(或手動重新啓動),只要確保您的服務知道如何正常恢復,如果中斷。

+0

沒錯......但就像我剛纔提到的......我並不關注如何解壓縮文件。無論是在Heroku還是S3。 – Shpigford 2013-04-26 14:51:47

+0

你會在Heroku上做到這一點。聽起來你使用的是Ruby,所以像[rubyzip](https://rubygems.org/gems/rubyzip)就可以工作。 – ryanbrainard 2013-04-26 17:19:48