Skip to content

Draft: 考虑是否可以更加细颗粒的控制延迟队列,支持一定的积压量 #6

@wppurking

Description

@wppurking

业务场景会遇到有 rate limit 的 api 调用, 当然可以直接交给外部的 rate limit 去处理. 但这样在与 mq 之间沟通的时候, 会浪费大量的计算资源在做重复的事情. 可以将任务分成两种进行考虑:

  1. one shot 类型: 正常让 mq 进行主动推送到 client, 然后进行执行处理既可以. 这里的要求是拥有一定的任务堆积能力, 以及消息处理速度的快慢. 能够方便的根据情况进行 consumer 的增加减少, 能够堆叠 1000w 以内的消息量(再多, 就应该是任务消费的问题了)
  2. delay 类型: 这类现在是简化的利用 mq 的 dlx 进行 retry 重试, 但因为是 push 模型, 所以无法进行主动的任务量获取的控制. 如果需要更加精确的 delay 或者 schedule 类型的任务, 则需要利用新的数据结构或者中间件来解决这个问题.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions