我有一個傳統的3層應用程序與春天。我的一個倉庫需要3分鐘以上的初始化時間,所以我考慮了一些多線程方法以加速整個過程 - 我認爲我的依賴關係樹中的大多數服務和控制器已經可以啓動,因此只有少數人必須等待最後一個存儲庫出現。使用spring進行多線程上下文初始化?
有沒有最佳實踐方法?
我有一個傳統的3層應用程序與春天。我的一個倉庫需要3分鐘以上的初始化時間,所以我考慮了一些多線程方法以加速整個過程 - 我認爲我的依賴關係樹中的大多數服務和控制器已經可以啓動,因此只有少數人必須等待最後一個存儲庫出現。使用spring進行多線程上下文初始化?
有沒有最佳實踐方法?
使用Spring的Executor抽象。如果你在應用程序服務器中,那麼我建議你使用應用程序服務器的工作管理器(spring支持它)。對於例如WebSphere應用服務器和Weblogic都支持在JNDI中註冊工作管理員。然後你可以將jndi的名字傳給spring。 Task Executors
我們目前使用Tomcat - 它也支持這樣的東西嗎? – Jan 2010-11-03 15:13:14
我不認爲tomcat支持工作管理器。但是在tomcat中,你可以很好地使用Spring提供的其他執行者:http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/scheduling.html – 2010-11-03 15:14:31
我只看到了註釋的例子方法,而不是用於實際的初始化。我是否需要自定義代碼來處理併發上下文初始化? – Jan 2010-11-05 15:25:50
哪個版本的Spring? 3.0.x使這個東西相當容易。 – skaffman 2010-11-02 08:56:24
是的,我使用3.0.x - 所以提示? – Jan 2010-11-03 15:12:55