我有一個Web應用程序(JSP/Servlets),我需要從中調用Web服務來獲取響應。由於Web服務需要大約4到5分鐘才能發送響應,因此應用程序將凍結,不允許用戶在應用程序上執行任何操作。從Servlet的獨立應用程序啓動線程
要解決此問題,我需要將Web服務調用委託給外部獨立應用程序的線程,以便Web服務調用變爲異步。有了這個,我有幾個問題:
什麼是從帶有參數的servlet中調用主程序的最佳方式。我正在考慮使用Runtime對象的exec()方法來調用.bat文件。比這更好的嗎?
我想爲每個請求的主程序啓動一個線程。但是爲每個請求調用主程序會每次啓動JVM(可能是昂貴的資源明智的)。是否有可能檢查主線程是否正在運行&如果是這樣,請在同一主線程上啓動新線程,而不是再次調用主程序。
請問誰能讓我知道什麼可能是最好的&非常昂貴的方式來處理?
在此先感謝。