Linux 服务器运维:这 5 个优化技巧让你的网站快一倍

李洋博客今天17阅读0评论

 

大家好,我是 IT 老李。做网站运维的朋友应该都有过这种体验:服务器配置不差,但网站就是慢。查来查去,问题往往不在硬件,而在系统配置。今天分享 5 个我亲测有效的 Linux 服务器优化技巧,不用花一分钱,能让你的网站响应速度提升不少。

1. 调整 TCP 连接参数

Linux 默认的 TCP 配置比较保守,对于高并发场景来说不够用。改几个参数就能有明显改善。

编辑 /etc/sysctl.conf,加上这几行:

net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_fin_timeout = 30net.ipv4.ip_local_port_range = 1024 65000net.core.somaxconn = 65535

然后执行 sysctl -p 让配置生效。

这几个参数的作用简单说就是:允许重用 TIME_WAIT 状态的连接、缩短连接关闭等待时间、扩大端口范围、增加连接队列长度。对于博客、企业站这种中等流量的场景,改完这些就够了。

2. 优化文件描述符限制

默认情况下,Linux 对每个进程能打开的文件数有限制(一般是 1024)。高并发时这个限制会成为瓶颈。

编辑 /etc/security/limits.conf,加上:

* soft nofile 65535* hard nofile 65535

重启服务器后生效。这个改动对 Nginx、MySQL 这类服务特别有用。

3. MySQL 内存优化

很多朋友的 MySQL 配置是默认的,根本没根据服务器内存调整。一个 2G 内存的服务器,MySQL 默认可能只分配 128M 缓冲池,这明显不够用。

/etc/my.cnf 里调整这几个参数:

[mysqld]innodb_buffer_pool_size = 512Mmax_connections = 200query_cache_size = 32M

具体数值根据你服务器内存来。原则是:MySQL 占用的内存不要超过总内存的 50%,剩下的要留给系统和 Web 服务。

4. 开启 Gzip 压缩

这个在 Nginx 里配置,能大幅减少传输数据量。在 Nginx 配置文件里加上:

gzip on;gzip_min_length 1k;gzip_types text/plain application/javascript text/css;gzip_comp_level 6;

重启 Nginx 后,你的 CSS、JS 文件会被压缩传输。对于内容型的网站,这个优化效果非常明显,页面加载时间能减少 30% 以上。

5. 定期清理日志和缓存

服务器用久了,日志文件会越积越多。我见过太多服务器磁盘满了,结果网站挂了的案例。

写个简单的脚本,定期清理旧日志:

#!/bin/bashfind /var/log -name "*.log" -mtime +30 -deletefind /www/wwwlogs -name "*.log" -mtime +15 -delete

加到 crontab 里,每周执行一次。另外,宝塔面板这类工具自带日志清理功能,记得开启。

监控比优化更重要

说句实在话,优化固然重要,但监控才是王道。你都不知道服务器啥时候出问题,优化再好也没用。

我推荐装个简单的监控工具,比如 Prometheus + Grafana,或者直接用云服务商自带的监控。重点看这几个指标:CPU 使用率、内存使用率、磁盘 IO、网络流量。

设置个告警,CPU 持续 5 分钟超过 80% 就给你发短信。这样问题刚冒头你就能处理,不会等到网站挂了才知道。

最后唠叨两句

运维这事儿,讲究的是稳。别一上来就搞什么激进优化,先把基础打牢。上面这 5 个技巧都是经过验证的,改起来风险小,效果明显。

还有一点:每次改配置前,先备份。别嫌麻烦,真出问题的时候你会感谢自己的。

有问题评论区见。

 

文章版权声明:除非注明,否则均为李洋博客原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (暂无评论,17人围观)

还没有评论,来说两句吧...

取消
微信二维码
微信二维码
支付宝二维码