Skip to content

Resolve Backpressure Issues about the Task Channel in Node #515

@FrankLi123

Description

@FrankLi123

What feature is it?

Implement an adaptive "Task Buffer" with a go slice that efficiently manages task flow between the producer(data-source) and the consumer(worker). The producer adds tasks to the buffer and pauses when the buffer is full. The consumer then takes and processes tasks from the buffer.

What problem does this feature solve?

This mechanism ensures that all collected data is processed successfully and efficiently under backpressure conditions. Currently, the task channel is unbuffered, which can cause delays and blocking latency when too many tasks are sent to the channel in a short period. Implementing a sliding window buffer makes data processing more efficient.

Additional description

No response

This is not a duplicated feature request or new worker proposal

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions