当前位置: 首页 > 知识库问答 >
问题:

停止使用流侦听器的消息

宋飞文
2023-03-14

我正在寻找一种方法来停止消费与流监听器的消息。

@StreamListener(MBinding.M_INPUT)
    public void consumeMessage(Message<MerchantEvent> message) {
    //handle when receive message
 }

cloud:
        stream:
            bindings:
                MInput:
                    destination: topicName
                    group: groupName

我已经在谷歌上搜索了它,但现在仍然不知道如何停止消费。有谁知道吗?

共有1个答案

关玮
2023-03-14

您可以使用执行器(请参见绑定、可视化和控制)。也可以以编程方式调用endpoint。

@SpringBootApplication
@EnableBinding(Sink.class)
public class So58795176Application {

    public static void main(String[] args) {
        SpringApplication.run(So58795176Application.class, args);
    }

    @StreamListener(Sink.INPUT)
    public void listen(String in) {
        System.out.println();
    }

    @Autowired
    BindingsEndpoint endpoint;

    @Bean
    public ApplicationRunner runner() {
        return args -> {
            System.in.read();
            endpoint.changeState("input", State.STOPPED);
            System.in.read();
            endpoint.changeState("input", State.STARTED);
        };
    }

}
 类似资料:
  • 问题内容: 我一直试图找到一种方法来优雅地停止Go中的监听服务器。因为阻塞了,所以有必要关闭侦听套接字以发出结束信号,但由于没有导出相关错误,因此我无法分辨该错误以及其他任何错误。 我可以做得更好吗?请参阅下面的代码 此打印 我想隐藏消息,但是显然我不想掩盖可以报​​告的其他错误。我当然可以在错误测试中进行查找,但这确实很难看。我可以设置一个标志,说如果要设置,我将要关闭并忽略错误-有更好的方法吗

  • 我正在使用 发送和 对于现在从rappid mq接收消息,我希望使用类似以下内容的侦听器: 问题是onMessage监听器与Messages一起工作是否有可能在类似的函数中接收简单的可序列化对象?

  • 问题内容: 我正在尝试在ActionListener中停止计时器。以下是我正在尝试执行的代码。我打算停止在actionPerformed方法内满足特定条件时创建的计时器。timer.stop()不起作用,编译器不允许我这样做。 任何帮助。建议,建议将非常有帮助。 } 在此先感谢克里希南 问题答案: 也可能: 或者,使用事件对象获取源(并将其 强制转换为boo ): 或者,将计时器保留在实例变量中,

  • 我们有一个JMS监听器,它从MQ中提取消息并将它们保存在数据库中。我的问题是在db关闭时暂时暂停JMS侦听器并在一段时间后再次恢复它的最佳方法是什么。 我的想法是在db操作周围使用Spring断路器来监视它的健康状况并回退到错误处理程序方法。这将有助于避免每次都等待db超时。然而,监听器仍然在拉取消息并试图保存它们,这浪费了CPU和网络。 有没有办法处理断路器命令事件,如:开/半开/关?然后我可以

  • 我有一个可流动的工作流,我需要在某个阶段暂停,然后根据JMS消息从JMS监听器重新启动相同的工作流。

  • 我需要在一定的持续时间后将消息发送给MessageListener,所以有没有任何方法可以使用SpringAMQP实现。 如。Producer生成消息并将消息发送到RabbitMQ Q,该消息立即被侦听器接收到,我想延迟消费者端接收到的消息,比如说在一些配置参数(比如1000ms)之后

  • 所以问题是如何临时停止和启动使用spring创建的jms侦听器,使用衰减方式: 那么基本上问题是什么。我们确实有一个初始化/更新机制,客户端可以在任何时间运行,在初始化/更新期间,我想停止使用任何消息,因为系统在这段时间内不可用,如果消息来了,它将丢失。 因此,我如何使用API停止侦听器或侦听器容器或整个连接。我发现一个类AbstractJmsListeningContainer有stop/sta

  • 我有一个Spring应用程序在独立的JBoss EAP 6.2中运行(带有嵌入式HornetQ提供程序)。 消息被成功地放在队列中(我可以在jboss eap-6.2\独立\data\MessagingJournal\hornetq-data-1.hq中看到它们,因为队列是持久的),但不会被侦听器拾取(侦听器中的断点不会被命中)。我怀疑配置中缺少或错误的东西,但看不出是什么。JBoss启动时没有任