我目前正在评估 Apache Pulsar 对于使用“共享”订阅构建分布式任务队列的适用性。
一个必需的功能是获取某些主题的所有当前正在运行的任务,或者至少获取当前正在运行的任务的数量。 我的意思是消费者已收到但尚未确认的给定订阅的所有消息。 这可能吗?如果可以,如何实现?
据我所知,你不能,因为将未确认的消息标记为进程中的这种抽象并不存在。代理向消费者发送 1500 条 unack 消息。它将它存储在内部内存队列中,每次您使用消费者 API 请求消息时,您都会从该内存队列中获取一条消息,完成后将其标记为已确认。