一、内核参数优化
1、TCP/IP协议栈参数优化
net.ipv4.tcp_fin_timeout = 10 net.ipv4.tcp_keepalive_time = 300 net.ipv4.tcp_syncookies = 1 net.ipv4.ip_local_port_range = 1024 65535
2、文件句柄数参数优化
fs.file-max = 65535
3、内存分配参数优化
vm.swappiness = 0 vm.overcommit_memory = 1
4、CPU性能参数优化
#禁用超线程 echo off > /sys/devices/system/cpu/smt/control #关闭Turbo Boost echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo
二、服务优化
1、禁用不必要的服务
systemctl disable cups systemctl disable bluetooth systemctl disable xinetd systemctl disable iptables
2、优化系统日志服务
#日志压缩 systemctl edit systemd-journald.service [Service] Compress=true CompressDelaySec=3 SyncIntervalSec=30 RuntimeMaxUse=100M
3、Nginx性能优化
#调整文件描述符 worker_rlimit_nofile 100000; #启用TCPNodelay tcp_nodelay on; #禁用TCPNagle算法 tcp_nopush on;
三、硬件优化
1、硬盘优化
在使用硬盘时,我们可以使用一些方法来提高硬盘的性能,例如:
- 使用RAID技术
- 使用SSD硬盘
- 使用LVM技术
2、CPU优化
使用CPU时,我们可以将CPU的性能提高到最大,例如:
- 可以使用CPU的缓存提高性能
- 可以增加CPU的内存容量
- 可以启用CPU虚拟化技术
3、内存优化
在使用内存时,我们可以使用一些方法来提高内存的性能,例如:
- 使用DMA技术
- 使用NUMA技术
- 增加内存容量
- 使用高速内存
四、网络优化
1、网络拓扑结构调整
可以通过调整网络拓扑来实现网络性能的提高,例如:
- 将业务服务器与数据库服务器直接相连
- 增加路由器的数量
- 增加交换机的数量
2、负载均衡配置
可以通过配置负载均衡设备来实现多台服务器共享负载的功能,例如:
- 使用LVS实现负载均衡
- 使用CDN实现负载均衡
3、网络协议优化
#启用TCP Fast Open echo 3 > /proc/sys/net/ipv4/tcp_fastopen #启用TCP BBR拥塞控制算法 echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p
五、安全优化
1、安全加固配置
#设置SSH服务不允许root用户登陆 echo "PermitRootLogin no" >> /etc/ssh/sshd_config systemctl reload sshd #禁用IPv6 echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf sysctl -p #配置防火墙 iptables -F INPUT iptables -P INPUT DROP
2、系统日志安全
可以配置系统日志文件的权限来保证系统日志的安全性,例如:
chmod 600 /var/log/syslog
3、SSH密钥登陆
可以使用公钥/私钥的方式登陆SSH,提高SSH的安全性,例如:
#客户端生成密钥对 ssh-keygen -t rsa #将公钥加入到服务器的authorized_keys文件中 ssh-copy-id user@server
六、监控优化
1、系统监控
可以使用一些监控工具对系统进行监控,例如:
- 使用Zabbix进行系统监控
- 使用Nagios进行系统监控
2、性能监控
可以使用一些性能监控工具对服务进行监控,例如:
- 使用New Relic进行Web应用性能监控
- 使用Zabbix进行系统性能监控
3、日志监控
可以将系统的日志信息发送到日志监控平台进行查看,例如:
- 使用ELK进行日志监控
- 使用Splunk进行日志监控