To alleviate some memory pressure during response body iteration, rely on String#clear to free(3) memory used for the large header buffer. Given the size of some response headers such as cookies, this can release several kilobytes of malloc heap memory for immediate use by other layers of the application stack. --- lib/unicorn/http_response.rb | 1 + 1 file changed, 1 insertion(+)
diff --git a/lib/unicorn/http_response.rb b/lib/unicorn/http_response.rb index ec128e4..284fc68 100644 --- a/lib/unicorn/http_response.rb +++ b/lib/unicorn/http_response.rb @@ -49,6 +49,7 @@ def http_response_write(socket, status, headers, body, end end socket.write(buf << "\r\n".freeze) + buf.clear end if hijack -- EW -- unsubscribe: unicorn-public+unsubscr...@bogomips.org archive: https://bogomips.org/unicorn-public/