You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Mikel Blanchard (Jira)" <ji...@apache.org> on 2020/03/05 00:04:00 UTC
[jira] [Created] (THRIFT-5133) netstd: TCompactProtocol string
allocation improvement
Mikel Blanchard created THRIFT-5133:
---------------------------------------
Summary: netstd: TCompactProtocol string allocation improvement
Key: THRIFT-5133
URL: https://issues.apache.org/jira/browse/THRIFT-5133
Project: Thrift
Issue Type: Bug
Components: netstd - Library
Affects Versions: 0.13.0
Reporter: Mikel Blanchard
WriteStringAsync & ReadStringAsync in TCompactProtocol each allocate a buffer to store UTF8 bytes when converting to and from strings. This buffer has to be cleaned up by the garbage collector (at some point), which can lead to a lot of pressure on the hosting process in high-volume scenarios. Basically a lot of short-lived buffers are being emitted by the library. It's an easy tweak to use a pooled buffer for this work which greatly improves the performance under load.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)