2010-08-26 178 views
5

我有一個使用inets進行大量http客戶調用的Erlang應用程序。我想通過接受來自提供它的服務器的gzip數據來減少我的帶寬賬單。有沒有可以解決這個問題的inets選項? [找不到一個]。有人可以推薦一個zip庫嗎? [我已經看過stdlib zip庫,但它似乎只是解壓壓縮文件,而不是解壓縮單個流]。在Erlang中解壓壓縮的數據

謝謝!

回答

2

看看zlib模塊。請參閱file:open/2選項compressed以瞭解將來可能的使用情況。請注意0​​和zlib又名gzip是不一樣的東西。我想你已經注意到了。

看看http://blog.gebhardtcomputing.com/2007/09/grab-webpage-in-erlang-which-is-gzipped.html的一些靈感,但你可能需要流式處理,這在手冊頁中有很好的描述。

+0

zlib:gunzip非常適合gzip壓縮的數據;有關如何解析[def]'deflate'編碼的內容的任何想法? – Justin 2010-08-26 20:46:37

0

我建議在HTTP前端(nginx,apache等)進行壓縮/解壓縮。這將會更加優化。