Apache nifi 为什么我的NiFi 1.11.1处理器挂起任务?
我有一组进程组在1.8.0 NiFi服务器上愉快地运行。我在一个单独但类似的服务器上创建了一个NiFi 1.11.1实例,并在相同的进程组上进行了模板化。在新的1.11服务器上,处理器(所有处理器,在类型上没有明显差异)处理一小批任务,然后在一个任务上挂起几个小时 重新启动处理器没有明显的效果,重新启动NiFi实例本身通常会让处理器在问题再次出现之前正常运行一两分钟。日志中没有错误,增加内存没有任何影响,处理器使用率没有超过20% 我一直在与运行中的服务器进行比较,唯一的区别是较新的NiFi版本和操作系统的打开文件限制(在我更新以匹配工作服务器之前,这确实导致日志中出现错误语句)。当然,我只检查了我认为需要检查的内容,所以请建议我可能遗漏的任何内容Apache nifi 为什么我的NiFi 1.11.1处理器挂起任务?,apache-nifi,Apache Nifi,我有一组进程组在1.8.0 NiFi服务器上愉快地运行。我在一个单独但类似的服务器上创建了一个NiFi 1.11.1实例,并在相同的进程组上进行了模板化。在新的1.11服务器上,处理器(所有处理器,在类型上没有明显差异)处理一小批任务,然后在一个任务上挂起几个小时 重新启动处理器没有明显的效果,重新启动NiFi实例本身通常会让处理器在问题再次出现之前正常运行一两分钟。日志中没有错误,增加内存没有任何影响,处理器使用率没有超过20% 我一直在与运行中的服务器进行比较,唯一的区别是较新的NiFi版本
我对NiFi非常陌生,因此如果有诊断或类似信息可供我获取更多信息,请告诉我。Per@Andy,在设置->控制器设置->常规下有两个选项,最大计时器驱动线程数和最大事件驱动线程数。它们分别默认为10和1。对于任何数量可观的处理器,这都是不够的,因此需要增加这些值。在我的例子中,这意味着在Apache NiFi配置过程中,将它们的数量增加到300个。建议执行许多步骤(非普通部署需要阅读)。在本例中,限制行为的特定设置是最大计时器驱动线程数,这会导致与系统上大量处理器的资源争用 额外资源:
- -描述单个组件的监视状态,包括分配的线程
- -描述组件行为和处理统计信息的综合视图
- -Matt Clarke介绍了线程池的工作方式以及如何配置它们以最大限度地提高性能