java - 如何以一定的速率消费者QueueChannel?

标签 java spring spring-boot spring-integration

Here是如何填充和处理队列的示例。但是如何处理带有速率的消息呢?喜欢每秒处理 N 条消息?

更新 这里的“进程”:我的意思是“出队”。例如。如何每秒出队 N 条消息?

最佳答案

正如我之前提到的,您可以使用某种速率控制来编写循环(例如,通过 Thread.sleep 作为最基本的)。 您也可以尝试使用@Scheduled 注解。

这是每秒调用 100 次的方法的示例

@Scheduled(fixedRate = 10)
public void dequeue() {
        //queue.poll(..)
}

关于java - 如何以一定的速率消费者QueueChannel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61096936/

相关文章:

java - ADMA5014E 将 Mavenized Java 应用程序安装到 WebSphere 时出错,并出现 NoModuleFileException : "A file does not exist for module element having uri"

mysql - 在 Spring boot 中使用 .sql 文件中的初始数据填充 MySql DB

java - 如何在 Java 中使用 Cassandra Map 类型

java - 将 spring 配置文件添加到 SpringBootTest 中的现有配置文件中

java - LayoutParams 上的 ClassCastException 从 LinearLayout 到 AbsListView

java - 如何替换 HttpServletResponse 输出流?

java - 在 Eclipse 中禁用来自 MongoDB 的控制台日志记录

java - "merge"两个ApplicationContext配置的最佳方法

java - Spring:未调用自定义 validator

java - 使用 ng-file-upload 和 Spring Boot 上传文件