Nifi 的性能 | 学习笔记

简介: 快速学习 Nifi 的性能

开发者学堂课程【NiFi 知识精讲与项目实战(第一阶段)Nifi 的性能】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/705/detail/12509


Nifi 的性能

内容介绍

一、性能

二、总结

一、性能

NIFI 的设计目的是为了充分利用运行的底层主机系统的能力,资源的最大化,在 CPU 和磁盘的利用方面尤其明显。主要分三部分:

1.IO

第一部分是磁盘 IO,不同系统、不同的配置,可以预期的吞吐量和延迟有很大的差异,具体取决于系统的配置方式,鉴于大多数系统都有可插拔的实现,所以具体的性能还取决于具体的实现方式,但是对于广泛适用的场景来说,都会优先考虑使用现场的默认的实现,尽量避免重复,实现都是持久化的,有保证的让数据流进行传递,并且使用本地磁盘来进行存储,所以如果在典型的服务器当中,一些普通磁盘和卷上读取收益大,如果是50兆的话,对于大型的数据流 nifi,能够达到每秒100兆或是更高的通透量,因为首先预期添加到 nifi 当中的分区和内容流式都是线性增长的,而nifi 支持集群的模式,所以可以很好的解决磁盘IO的问题。

2.CPU

关于 CPU 这部分,流控制器进行现场的分配,流式控制器充当的是引擎调度的角色,来指示处理器什么时候可以被分配现场运行,并且在任务执行以后,会立即释放所占用的现场,可以为 flowcontroller 提供配置的属性值,属性值可以指导 flowcontroller 维护各个线程,指导可用线程,数量值可以修改,理想的线程数取决于不同服务器 CPU 内核的数量,不是一概而论的,如果说 CPU 性能很强劲,内核数量很多,就可以多分配线程,如果系统中还有正在运行的大量的服务,也要考虑到或者说流程中要处理的流,性质不一样,分配的限量数量也是不同的,取决于不同的具体场景而言,通过人工来判断,进行人为的配置,对于典型的 IO 大流量,合理的配置多线程,启用多线程,进行并行处理,可以明显的提升流式计算的效率。

3.RAM

内存,nifi 是在 GVM 训机当中运行的,所以 nifi 受限于 GVM 所提供的内存,GVM 垃圾回收机制是限制实际堆的总大小的重要的因素,也是优化应用运行的很重要因素,nifi 在定期读取相同内容的时候,可能会占用大量的内存,可以配置足够大的内存以及磁盘来优化 NIFI 的性能。


二、总结

Nifi 的性能,主要优化三个方面,磁盘 IO, CPU(多线程处理机制),内存可配置优化。内存主要是基于 GVM 内存控制来进行的。

相关文章
|
存储 监控 Java
NiFi 监控2 | 学习笔记
快速学习 NiFi 监控2
534 0
NiFi 监控2  |  学习笔记
|
存储 安全 Java
【NiFi】(一)NiFi 简介及核心概念
【NiFi】(一)NiFi 简介及核心概念
3094 0
【NiFi】(一)NiFi 简介及核心概念
|
4月前
|
监控 Java Linux
Apache NiFi项目的编译与部署于CentOS服务器
总而言之,Apache NiFi的编译和部署虽然涉及多个步骤,但这些操作步骤简明扼要,即使是不太熟悉Java或Maven的用户也能跟随指南完成。通过遵循上述步骤,您将能够在CentOS服务器上成功部署Apache NiFi,为您的数据流处理任务建立一个功能强大的平台。
361 16
|
11月前
|
监控 Java 数据库连接
Spring c3p0配置详解
在Spring项目中配置C3P0数据源,可以显著提高数据库连接的效率和应用程序的性能。通过合理的配置和优化,可以充分发挥C3P0的优势,满足不同应用场景的需求。希望本文的详解和示例代码能为开发者提供清晰的指导,帮助实现高效的数据库连接管理。
520 10
解决Java中的EOFException异常的方法
解决Java中的EOFException异常的方法
|
Linux 程序员 Perl
老程序员分享:Linux查看系统开机时间
老程序员分享:Linux查看系统开机时间
903 0
|
机器学习/深度学习 人工智能 算法
分享135个游戏Python源代码总有一个是你想要的
分享135个游戏Python源代码总有一个是你想要的
941 1
油管公式(全)
油管公式(全)
5395 0
|
存储 SQL JSON
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(一)
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(一)