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

Add specialized buffers to memqueue #5148

Merged
merged 3 commits into from
Sep 12, 2017

Commits on Sep 11, 2017

  1. memqueue cleanup

    Move the buffer and message handling from memqueue broker type
    to the actual go routines handling the messaging.
    urso committed Sep 11, 2017
    Configuration menu
    Copy the full SHA
    9153047 View commit details
    Browse the repository at this point in the history
  2. Add specialized buffers to memqueue

    Use specialized buffer types and eventloops depending on the memqueue
    configuration.
    
    If flushing is disabled, a region based ring buffer is used, as loads of
    small batches can be generated and we want to minimize additional
    allocations of small objects.
    
    If flushing is enabled a list of active and flushed buffers is managed
    by the queue. If a buffer is flushed by timeout, but not yet processed
    (and not full), additional events being published are added to the
    already flushed buffer.
    urso committed Sep 11, 2017
    Configuration menu
    Copy the full SHA
    3a2d94b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3327a95 View commit details
    Browse the repository at this point in the history