我想问从 java servlet 运行长进程的最佳方法是什么。我有一个网络应用程序,当客户端发出请求时,它会运行一个 servlet。该 servlet 应该从请求中获取一些参数,然后运行一个进程。这个过程可能需要很长时间,所以我需要单独运行它。当此过程执行完成后,它会发送一封包含结果的电子邮件。
提前致谢。
使用线程池。每次收到请求时,创建一个任务并将其提交到线程池。这将确保太多的请求不会使服务器瘫痪,因为您可以控制可以拥有的并发线程数量,以及可以在线程池的等待任务队列中等待的任务数量。
请参阅 javadoc执行者 http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/Executors.html and 线程池执行器 http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)