我正在编写在 TomCat.7 上运行的 Spring Web 应用程序,其中一项功能是使用 java.concurrency 处理来自 db 的数据。
由于计算,我希望数据库处理将是一个非常耗时的处理,并且我需要此过程的高性能。
我的问题是在 TomCat 容器中运行该线程是否是个好主意(或者可能是唯一的可能性)?
@RequestMapping(value = "run_process", method = RequestMethod.GET)
public RequestWrapper runProcess(ModelMap model) {
Runnable runCrawler = new Crawler();
runCrawler.run();
System.out.println("##run_process!");
return new RequestWrapper();
}
我的项目结构是这样的:
-src
-com.scanner.batchprocess
-com.scanner.crawler
-com.scanner.webapp.controllers
我在创建计算上具有挑战性的程序方面没有任何经验,所以我担心也许我应该创建一个新的干净的 java 项目,主类将在用户运行 BatchProcess 时从 webapp 调用。来自 Tomcat 的执行时间应用程序与真正的 java 应用程序的时间差异是否很大?