現在、私はSpringブートアプリケーションを外部のTomcatインスタンスにデプロイしようとしていますが、特定のもののインスタンス化を最適に管理する方法に関するいくつかの質問に就いています。Beanライフサイクル管理スプリングブート
は、同様に、現在、私はBackgroundThreadは、新しい仕事のためにAMQP型メッセージング・キューに待機しているスレッドである
public class MyClass extends SpringBootServletInitializer{
@Bean
public ThreadPool pool(){
return new ThreadPool();
}
@Bean
public BackgroundThread setupInbox() {
BackgroundThread inbox = new BackgroundThread(pool());
inbox.start();
return inbox;
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MyClass.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(MyClass.class, args);
}
}
の線に沿って何かを持っている構造。私はSpringがこれを行ういくつかのRabbitMQ方法を提供していることを知っていますが、私たちはRabbitをこれに使用していないので、それは役に立たない。
配布されているこの* .warファイルの目的は、メッセージングを通じていくつかの機能をワイヤに公開することです。私の質問は、BackgroundThreadのインスタンス化、起動、破棄の最善の方法です春? XML構成ですか?
いくつかのSpringコンテキストライフサイクルイベントを聞き、それらのスレッドを管理しますか? – jahra