QQ登录
只需一步,快速开始
 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 32|回复: 2

【经验】1核1G 的小水管,我硬是优化到能扛日 IP 5000+

[复制链接]

8

主题

5

回帖

2474

积分

金牌会员

积分
2474
发表于 前天 18:42 | 显示全部楼层 |阅读模式
本帖最后由 discuz 于 2026-10-18 18:50 编辑

先自报家门:楼主不是运维大佬,就是个自己折腾博客几年、钱包还不鼓的普通站长。去年 60 块钱一年撸了台 1核1G / 1M 带宽 的最低配小鸡,打算放个 WordPress 加一个小论坛。

结果一上线就打脸:首页 TTFB 三秒起,并发一上来直接 502,后台点一下转半天。一度以为小鸡就是废柴,差点退坑。硬啃了几个月,现在这台机器日 IP 5000 左右稳着跑,再没 502 过。过程记一下,给同样用最低配的兄弟避坑。

一、先别急着抄参数,先找瓶颈

新手最爱干的:网上一搜「服务器优化」,抄一堆参数贴上去,改完更卡还不知道为啥。先装工具看真实情况:

  1. yum install -y htop iotop sysstat
复制代码


- htop:CPU 和内存谁先满
- free -h:内存 + swap
- iostat -x 1:磁盘 IO(廉价 SSD 很容易卡这)
- sar -n DEV 1:网卡流量,1M 带宽是不是顶到头了

我那台一测就清楚:内存最先爆(1G 是真不够),其次 MySQL 拖后腿,带宽是最后那道硬墙。



二、系统层:用不上的服务全关掉

先看看开机自启了些啥:

  1. systemctl list-unit-files --state=enabled
复制代码


把用不到的(邮件、蓝牙之类)关掉,能省几十上百 M 内存。再给 1G 的机器加个 swap 兜底,免得 OOM 直接把 MySQL 干掉:

  1. dd if=/dev/zero of=/swapfile bs=1M count=1024
  2. chmod 600 /swapfile
  3. mkswap /swapfile && swapon /swapfile
  4. echo '/swapfile none swap sw 0 0' >> /etc/fstab
复制代码


swap 慢,但总比服务被杀强。

三、Nginx:缓存才是小水管的命根子

1M 带宽下,代码写得再快也没用,能少回源一次是一次。开 gzip、静态资源给足 expires,最关键的是开 fastcgi_cache,把动态页面的 HTML 缓存下来,重复请求直接吐缓存、根本不碰 PHP:

  1. fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=mycache:64m inactive=60m;
  2. fastcgi_cache_key "$scheme$request_method$host$request_uri";
  3. fastcgi_cache mycache;
  4. fastcgi_cache_valid 200 60m;
复制代码


这一层加上,首页 TTFB 直接掉到几百毫秒。

四、PHP-FPM:进程数千万别开多

1G 内存最忌 pm=static 开一堆。WP 一个进程少说 30-50M,开 10 个内存就没了。改成按需:

  1. pm = ondemand
  2. pm.max_children = 5
  3. pm.process_idle_timeout = 10s
复制代码


再把 opcache 开上(memory_consumption 给 64),PHP 快一大截。

五、MySQL:1G 内存的配法

InnoDB 缓冲池是重头,但别贪,1G 机器给 128M 就够,给多了系统直接 OOM:

  1. innodb_buffer_pool_size = 128M
  2. innodb_flush_log_at_trx_commit = 2
  3. max_connections = 30
复制代码


顺手开慢查询日志,揪出没走索引的 SQL:

  1. slow_query_log = 1
  2. long_query_time = 2
复制代码


六、加一层 Redis 对象缓存

WordPress 装个 Redis Object Cache 插件,Discuz 直接连 Redis。数据库压力砍一半,页面秒开。

七、动静分离 + CDN

1M 带宽的硬伤,靠 CDN 治:图片、CSS、JS 全甩 CDN,回源只剩 HTML。配上第三条的页面缓存,回源次数能压到个位数。

八、优化前后对比

ab 压测,并发 50 跑 1000 次:

- 优化前:约 3 req/s,一堆失败、一堆 502
- 优化后:约 180 req/s,零失败

首页 TTFB:3.1s → 0.28s。







九、一句话清单

1. 先测后改,别瞎抄参数
2. 小内存先管住进程数,别让 PHP/MySQL 吃爆
3. Nginx 页面缓存 + CDN 是小水管命根子
4. Redis 兜住数据库
5. 静态资源能缓就缓

小水管不是不能用,是得顺着它脾气来。上面都做完,我这台 60 块一年的机器现在跑两个站还能扛日 IP 5000。同样用小鸡的兄弟欢迎交流,踩过的坑一起填。

1

主题

2

回帖

75

积分

注册会员

积分
75
发表于 前天 20:12 | 显示全部楼层
牛逼克拉斯 学习下

8

主题

5

回帖

2474

积分

金牌会员

积分
2474
 楼主| 发表于 前天 20:20 | 显示全部楼层
playba 发表于 2026-10-18 20:12
牛逼克拉斯 学习下

一起加油!💪
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|七亿社区站长论坛

GMT+8, 2026-10-20 19:21 , Processed in 0.302431 second(s), 5 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表