sysctl命令增大TCP接收/发送缓冲区,提升网络吞吐量。例如:sysctl -w net.core.rmem_max=16777216 # 接收缓冲区最大值 sysctl -w net.core.wmem_max=16777216 # 发送缓冲区最大值 sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216" # TCP接收缓冲区分段 sysctl -w net.ipv4.tcp_wmem="4096 65536 16777216" # TCP发送缓冲区分段 echo 1 > /proc/sys/net/ipv4/tcp_fastopen # 启用TFO sysctl -w net.ipv4.tcp_congestion_control=bbr # 使用BBR拥塞控制 tcp_fin_timeout缩短TIME_WAIT状态保持时间(默认60秒),释放网络资源:sysctl -w net.ipv4.tcp_fin_timeout=30 # 设置为30秒 /etc/security/limits.conf,提升HDFS进程(如NameNode、DataNode)的文件描述符上限,避免高并发时资源耗尽:* soft nofile 65535 * hard nofile 65535 dfs.client.read.shortcircuit=true及dfs.domain.socket.path(指定Unix域套接字路径)。<property> <name>dfs.locality.wait</name> <value>10s</value> </property> io.compression.codecs指定支持的压缩编解码器:<property> <name>io.compression.codecs</name> <value>org.apache.hadoop.io.compress.SnappyCodec,org.apache.hadoop.io.compress.DefaultCodec</value> </property> dfs.locality.wait参数让计算任务优先在数据所在节点执行,避免跨节点传输。若数据未本地化,可等待指定时间后再从远程节点拉取。iftop(查看实时带宽占用)、nload(监控网络流量趋势)、iptraf(分析网络连接)等工具,定位网络瓶颈(如某节点带宽占用过高)。以上策略需根据集群规模、数据特性(如访问模式、数据量)及业务需求(如实时性、可靠性)组合使用,并通过监控工具验证优化效果,持续调整参数以达到最佳网络传输性能。