opt proxygen with newly added OpenSSL functions
authorWoo Xie <woo@fb.com>
Fri, 26 Jun 2015 03:11:55 +0000 (20:11 -0700)
committerSara Golemon <sgolemon@fb.com>
Fri, 26 Jun 2015 18:45:40 +0000 (11:45 -0700)
commit06557e1f06b3eaea99e0f32406e5a6989354b8bf
tree7d520b79df1fa70987f66b84446eb29fdfd7ded7
parentdf324b0aa2b0ecd637dae9acdb15466ec58dee68
opt proxygen with newly added OpenSSL functions

Summary: this taks advantage of SSL_write_iovec and SSL_read_buf functions to improve CPU.  This eliminates one malloc+memcpy+free operation for all HTTPS traffic, and save up to two for small packets.

It saves 10~15% CPU
https://fburl.com/99681397
https://fburl.com/99427544

Reviewed By: @djwatson

Differential Revision: D1993764
folly/io/async/AsyncSSLSocket.cpp
folly/io/async/AsyncSSLSocket.h
folly/io/async/AsyncSocket.cpp
folly/io/async/AsyncSocket.h
folly/io/async/AsyncTransport.h