首页 > 解决方案 > 限制在 java 中创建 Runnable

问题描述

我有一个不断接收消息的系统。我需要将这些消息传递给新系统。但是我将在这里发送数百万条消息。我想在一个单独的线程上运行它。在那种情况下,我们可以创建数百万个可运行的对象来将任务发布到 ScheduledThreadPoolExecutor 上吗?

标签: java

解决方案


我认为没有必要创建数百万个 Runnable 实例。我不知道您系统的其他详细信息,但看起来您可以在收到消息后立即将收到的消息发送到新系统。

如果您希望增加一些抵抗力,那么您应该考虑使用消息队列或数据库来存储接收到的消息。这样,您将防止它们在崩溃/进程退出的情况下丢失。并且一个单独的线程池应该通过发送到一个新系统来处理来自这个存储(队列或数据库)的消息。


推荐阅读