Skip to content

Design Discussion: Implementing Queueing logic to enable parallel run of index and download logics #64

Description

@oreenlivnicode

Problem Statement:

We are aiming to improve the system by running the index and download logics in parallel. To achieve this, we need to implement a queueing mechanism that can effectively manage these two processes.

Proposed Solution - Use Redis Sets as Queues

How it works:

Utilize a Redis set (or two sets, one for workflows and one for actions) to queue items for processing.
Download logic will insert items to these sets after it downloads it.
Index logic will pop items from these sets and index them.

Pros:

Simplicity: Easy to implement and manage.
No Duplicates: Sets prevent duplicate items by default.

Cons:

Ordering: Redis sets do not guarantee order, which could be an issue if ordering is essential.

What do you think?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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