ubuntu进程如何进行优化配置
导读:Ubuntu 进程优化实用指南 一 监控与定位瓶颈 先用工具看清瓶颈:CPU/内存用top/htop,磁盘 I/O 用iostat -x 1,网络用sar -n DEV 1(需安装sysstat)。这些能快速定位是 CPU 密集、内存吃紧...
Ubuntu 进程优化实用指南
一 监控与定位瓶颈
- 先用工具看清瓶颈:CPU/内存用top/htop,磁盘 I/O 用iostat -x 1,网络用sar -n DEV 1(需安装sysstat)。这些能快速定位是 CPU 密集、内存吃紧还是 I/O/网络受限。
- 持续可视化监控:部署netdata或Prometheus Node Exporter,长期观察关键指标并设定告警,便于持续优化。
- 基线评估:对关键负载做基准测试(如sysbench),在调整前后对比吞吐、延迟与抖动,避免“凭感觉”调参。
二 进程调度与资源限制
- 调整优先级(nice/renice/systemd):
- 启动时降低非关键任务优先级:nice -n 19 make -j$(nproc);提升关键任务需 root:sudo nice -n -5 command。
- 运行中调整:sudo renice 15 或 sudo renice -10 ;在 top 中按r交互修改。
- systemd 服务默认优先级:创建覆盖配置sudo systemctl edit ,在**[Service]下加Nice=-5**,重启后用systemctl show | grep Nice验证。
- 控制并发与亲和性:
- 将批处理/低优任务设为batch调度并降低优先级:sudo systemctl set-property nginx CPUSchedulingPolicy=batch CPUSchedulingPriority=10。
- CPU 绑定减少抖动:taskset -c 0,1 myapp(将进程固定到核 0、1)。
- 资源限制与上限:
- 会话级文件描述符:ulimit -n 65535;按需放宽到更高值(注意系统全局上限)。
- 持久化用户/进程上限:编辑**/etc/security/limits.conf**(如nofile、nproc),并在**/etc/systemd/logind.conf调高UserTasksMax**,防止用户级进程/线程过多。
- 容器/节点:Kubernetes 场景建议swapoff -a并开启桥接流量入 iptables,减少抖动与不可预期的内存回收。
三 内存与 Swap 策略
- 合理规划 Swap:
- 经验值:≤4GB 内存:Swap≈2×内存;4–16GB:Swap≈内存;> 16GB:Swap≈4GB 固定。
- 快速增加 Swap 文件:
- 创建:sudo fallocate -l 4G /swapfile & & sudo chmod 600 /swapfile
- 格式化并启用:sudo mkswap /swapfile & & sudo swapon /swapfile
- 永久生效:写入**/etc/fstab**:/swapfile none swap sw 0 0
- 减少抖动与回收压力:
- 启用 SSD 定期 TRIM:sudo systemctl enable fstrim.timer。
- 内存过量使用策略:仅在明确场景启用overcommit_memory=1(如高并发短连接服务),并配合合理的应用限流与 OOM 策略,避免不可控回收。
四 内核网络与文件系统
- 网络栈关键参数(/etc/sysctl.conf,执行sysctl -p生效):
- 扩大连接队列与监听队列:net.core.netdev_max_backlog=30000、net.core.somaxconn=65535、net.ipv4.tcp_max_syn_backlog=8192。
- 加速回收 TIME_WAIT:net.ipv4.tcp_tw_reuse=1;缩短保活探测:net.ipv4.tcp_keepalive_time=100。
- 降低重传重试:net.ipv4.tcp_syn_retries=1、net.ipv4.tcp_synack_retries=1、net.ipv4.tcp_retries2=5。
- 可选:不需要 IPv6 时net.ipv6.conf.all.disable_ipv6=1。
- 网卡 offload:开启TSO/GSO/GRO减少 CPU 中断与拷贝:sudo ethtool -K eth0 tso on gso on gro on。
- 文件系统与存储:
- SSD 启用fstrim.timer;
- XFS可用xfs_io -c “extsize 1M” /mount/point优化预分配;
- Ext4在确保数据安全前提下可用data=writeback(权衡元数据一致性风险)。
五 服务、启动与日志
- 精简自启与停用无用服务:
- 查看已启用服务:systemctl list-unit-files --type=service | grep enabled;
- 可禁用示例:apport、whoopsie、avahi-daemon(视业务而定)。
- 日志与 I/O 减负:
- 配置logrotate轮转压缩,控制单个日志大小与保留天数,避免磁盘被撑满与同步写入抖动;
- 容器化场景可将非必要日志丢弃或汇聚到集中式日志系统,降低本地 I/O。
- 桌面与后台进程:
- 减少开机启动应用,必要时切换到XFCE/LXDE/MATE等轻量桌面;
- 定期执行sudo apt-get autoclean & & sudo apt-get autoremove清理无用包与缓存。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu进程如何进行优化配置
本文地址: https://pptw.com/jishu/788701.html
