我正在构建一个软件解决方案,它为每个新类别的事物创建 JMS 主题。该主题是在第一轮数据集成时创建的,并且必须进行通信。该主题的持久订阅由消费者创建,但仅在创建类别和第一个数据之后的一段时间。属于该类别的所有数据都作为消息发送给消费者,以便它们也得到更新。
在创建类别和创建持久订阅之间,最好丢弃消息。消费者首先对现有数据进行初始同步,然后创建持久订阅并监听创建/更新消息。
一种选择是让消费者在注册第一个持久订阅时创建主题。同时,如果将数据添加到类别中,则不会由产品发送,因此也不会创建主题。
如果不存在消费者,另一种选择是丢弃消息。我不是在谈论活跃的消费者,我说的是根本没有消费者。知道这是否可以实施吗?由于该主题没有持久/非持久订阅,因此我期望消息会被自动丢弃,但我错了。
你会选择哪个选项?
如果您查看下图,您将看到一个从未有订阅者排队的主题,其中有 4498 条消息。我是否以错误的方式解释了这些信息?