java - 如何在 Spring MVC 中监视执行器或其他任务执行线程

标签 java multithreading spring-mvc executorservice

我正在创建一个 Web 应用程序,在此我将创建许多服务和执行程序来执行一些任务。我扩展了 dispacter servlet 并在 init 方法中启动了执行程序或其他线程。这是正确的方法吗?

现在假设如果有任何请求到来,并且该执行器或类似任务执行线程在抛出异常后死亡。

1.我想这也会影响其他请求。那么这种情况我该怎么办?

2.如何创建一个监视线程来检查所有关键任务执行线程和执行器是否正常运行?

3.在这种情况下,我是否应该准备另一个备份执行器并推迟接管失败的执行器?如果是,那么如何?

最佳答案

这是一个旧的,但也许它会对某人有所帮助:)

对于 ExecutorService,Codahale Metrics 中有一个关于如何解决该问题的很好的示例:https://github.com/dropwizard/metrics/blob/master/metrics-core/src/main/java/com/codahale/metrics/InstrumentedExecutorService.java

我没有发现 Spring AsyncTaskExecutors 有什么好处:/

关于java - 如何在 Spring MVC 中监视执行器或其他任务执行线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18682166/

相关文章:

java - 检查纬度和经度是否在一个圆圈内

java - 如何在 JFrame 中的 java 中按键后显示/更新图像?

java - 使用 Java Monitor 而不是 Semaphore

java - 更新到 64 位版本的谷歌播放

c# - 如何从 WPF 应用程序线程显示 WinForms 模式对话框

c++ - Mutex 的锁定/解锁功能应该是 "const"吗?

java - 速度与 Apache Tiles

java - Spring MVC 根据id从多个表映射对象

java - 如何从表中获取用户名

java - 打开文件并访问特定索引处的特定字符