2010-08-26 40 views
5

Tôi có ứng dụng Erlang giúp thực hiện một số lượng lớn các cuộc gọi khách hàng http sử dụng inets. Tôi muốn giảm hóa đơn băng thông của mình bằng cách chấp nhận dữ liệu gzipped từ các máy chủ cung cấp nó. Có một tùy chọn inets sẽ xử lý này? [không thể tìm thấy một]. Có thư viện zip nào mà mọi người có thể giới thiệu không? [Tôi đã xem thư viện zip stdlib, nhưng dường như chỉ giải nén lưu trữ, thay vì giải nén các luồng riêng lẻ].Nén dữ liệu đã nén gzip ở Erlang

Cảm ơn!

Trả lời

2

Nhìn vào mô hình zlib. Xem thêm tại file:open/2 tùy chọn compressed để có thể sử dụng trong tương lai. Lưu ý rằng zipzlib aka gzip không giống nhau. Tôi nghĩ rằng bạn đã lưu ý nó.

Nhìn vào http://blog.gebhardtcomputing.com/2007/09/grab-webpage-in-erlang-which-is-gzipped.html để có một số nguồn cảm hứng, nhưng có thể bạn sẽ cần phát trực tuyến được mô tả rõ trong trang thủ công.

+0

zlib: gunzip hoạt động tốt cho dữ liệu được nén; bất kỳ ý tưởng nào về cách phân tích cú pháp nội dung [http] được mã hóa bằng 'làm lệch hướng'? – Justin

0

Tôi khuyên bạn nên thực hiện nén/giải nén ở giao diện HTTP (nginx, apache, v.v.). Điều này sẽ tối ưu hơn.