我已经配置了一个spring boot应用程序,该应用程序在运行时从队列中读取消息并相应地处理它们。 我还配置了并发标志来运行多个这样的读者。 然而,在理想的世界中,我希望接收器像线程一样继续运行并继续检查任何消息。 我的问题是,是否有任何方法可以在spring boot中配置它,或者我必须回退到使用执行程序或其他任何东西的线程机制。 谢谢, - Vaibhav
答案 0 :(得分:0)
我从Spring Boot找到了一个很好的方法,并发性当然是通过并发属性来实现的,例如
@JmsListener(destination = "myqueue", concurrency="2-10")
然而,下面的Thread部分是一个很好的方式:
@SpringBootApplication
@EnableAutoConfiguration(exclude={MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})
@EnableJms
public class MyApplication implements CommandLineRunner{
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
@Override
public void run(String... arg0) throws Exception {
// TODO Auto-generated method stub
System.out.println("Joining Thread ctrl+c to bring down application");
Thread.currentThread().join();
}
}