Skip to content

Add reusable buffer pool to low-latency transport - #25

Open
ak495867 wants to merge 1 commit into
janestreet:masterfrom
ak495867:master
Open

ak495867 wants to merge 1 commit into
janestreet:masterfrom
ak495867:master

Conversation

@ak495867

Copy link
Copy Markdown

This introduces a global Bigstring buffer pool for async_rpc's low-latency transport, reusing reader and writer buffers instead of allocating new ones for each connection. Reader and writer instances pull from the pool at creation and return buffers on close; new enable_buffer_pool and disable_buffer_pool APIs let callers tune or disable the pool. Pooling is opt-in and should be disabled for sensitive workloads because recycled buffers may retain prior payload data.

This introduces a global Bigstring buffer pool for async_rpc's low-latency transport, reusing reader and writer buffers instead of allocating new ones for each connection. Reader and writer instances pull from the pool at creation and return buffers on close; new enable_buffer_pool and disable_buffer_pool APIs let callers tune or disable the pool. Pooling is opt-in and should be disabled for sensitive workloads because recycled buffers may retain prior payload data.

Signed-off-by: ak495867 <akhverm@gmail.com>
@github-iron github-iron added the forwarded-to-js-devs This report has been forwarded to Jane Street's internal review system. label Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

forwarded-to-js-devs This report has been forwarded to Jane Street's internal review system.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants