Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Default to low-latency local loglet configuration #1546

Merged
merged 2 commits into from
May 24, 2024
Merged

Default to low-latency local loglet configuration #1546

merged 2 commits into from
May 24, 2024

Commits on May 24, 2024

  1. Configuration menu
    Copy the full SHA
    a21f9a0 View commit details
    Browse the repository at this point in the history
  2. Default to low-latency local loglet configuration

    This PR changes the default configuration of the local loglet to disable time-based batching. Most users's first impressions and general use will expect interactive low-latency experience and we want this to be the default case.
    A major performance win is the change in local loglet implementation. Tokio has 1ms timer resolution, so even if batching duration is set to zero, the runtime will still sleep an arbitrary amound between 0 and 1ms to resume the stream. The change switches to chunking ready items by default if time-based batching is zero. This results in 6X lower append path latency in my tests (even with fdatasync running on fast nvme)
    AhmedSoliman committed May 24, 2024
    Configuration menu
    Copy the full SHA
    06e9ce4 View commit details
    Browse the repository at this point in the history