[erlang-patches] Allow mod_esi:deliver/2 to handle binary data
Niclas Axelsson
burbas@REDACTED
Thu Feb 24 16:56:10 CET 2011
On 02/23/2011 05:59 AM, Bernard Duggan wrote:
> Hi all,
> We've been using mod_esi to deliver binary files over HTTP. In
> testing, some particularly large files were thrown at it and we ended
> up exhausting the VM's memory and crashing it. The ultimate problem
> is that mod_esi:deliver/2 is asynchronous, so there's no way to know
> how fast or slowly to feed it data to avoid the target process' queue
> getting too big. That's a bit of a trickier problem than I could
> quickly deal with (not least because it would require an interface
> change/addition).
> Instead, to mitigate the problem I've made a small change which
> allows mod_esi:deliver/2 to take binary data, rather than forcing the
> caller to convert it to a list first (and thus avoiding both the
> conversion cost and the copy cost as the list is passed between
> processes).
>
> You can grab it with
>
> git fetch git://github.com/bernardd/otp.git mod_esi_binary
>
> Cheers,
>
> Bernard
>
>
> ________________________________________________________________
> erlang-patches (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:erlang-patches-unsubscribe@REDACTED
Thanks Bernard,
Your patch have been merged to 'pu'.
Regards,
Niclas Axelsson, Erlang/OTP
More information about the erlang-patches
mailing list