开发者学堂课程【NiFi 知识精讲与项目实战(第二阶段):Linux 配置优化】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/706/detail/12526
Linux 配置优化
内容介绍:
一、Linux 配置优化概述
二、Linux 配置优化的具体方式
一、Linux 配置优化概述
学习 Linux 的配置优化,之所以学习这个知识点是因为一般的 NiFi 服务都会在 Linux 服务器上进行运行,如果在Linux 服务器上进行运行,且需要 NiFi 保持一个比较优良的性能,就必须要对 Linux 的配置进行优化,下面提供一个典型的 Linux 的默认配置方式。
二、Linux 配置优化的具体方式
主要针对 cent OS7的优化配置。
1.最大文件的句柄
NiFi 在很多时候都需要打开大量的文件句柄,这种情况下可以通过编辑 limits.conf 文件来增加限制,可以在这个文件中增加 hard nofile 和 soft nofile 这一部分的配置项。
2.最大派生进程数
最大派生进程数主要是用来控制线程的,NiFi 可以支持多线程并发执行,这个时候就要增加 Linux 所允许的线程数量。通过编辑 limits.conf 文件在这里面修改这两个配置项。有的 Linux 版本还需要编辑20-nproc.conf 文件,如果版本是 cent OS7,最好将这两部分都进行更改。
3.可用的 TCP 套接字端口数
如果流程要求的性能比较高,就必须要配置 socket 所允许的端口数。可以使用 sudo sysctl-w net.ipv4.ip_loca1_port_range ="10000 65000"命令来进行配置。
4.设置套接字在关闭的时候保持 timed walt 的状态时间
因为需要快速的设置和拆卸套接字,不希望这些数据在系统里存留太长的时间,如果太长时间不进行释放,它们就会把线程占满,这个时候可以通过 sudo sysct -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait ="1"命令来将保留时间缩短,以提升 cpu 和线程的利用率。
5.Swapping 功能的优化配置
可以在 sysctl.conf 配置文件中添加 vm.swappiness =0命令来进行优化。NiFi 存储的分区需要关闭 atime 选项,使吞吐量有一个极大的提升。可以通过编辑 etc/fstab 文件来添加配置项,这里面的分区一定要添加正确,NiFi 安装在哪个分区就要对哪个分区添加 atime 这个选项。比如说 NiFi 现在是在根文件系统中进行部署安装的,那么就要找到根文件系统,然后去编辑配置项。打开 etc/fstab 文件,在这里面找到跟系统,然后在这里面加上 no time 配置选项,NiFi 不在其他几个分区上运行,因此可以不对其他分区进行配置,只需要配置一个分区就可以。