很多新手在搭建网站时,
会选最便宜的云服务器——比如1核2GB配置。
然后装上 Nginx + MySQL + PHP(即 LNMP 环境),
想着“先试试看”。
但很快发现:
网站偶尔打不开、后台卡顿、数据库连接超时……
是配置太低?还是优化没做好?
答案是:1核2G 能跑 LNMP,但有明显性能边界。
资源占用实测
在 Debian 或 Ubuntu 系统下,
默认安装 LNMP(Nginx + PHP-FPM + MySQL 8.0):
- 系统基础占用:约 150~200MB
- Nginx:30~50MB
- PHP-FPM(2个子进程):约 200~300MB
- MySQL 8.0(默认配置):600~900MB
总内存占用轻松突破1.2GB,
剩余可用内存不足 800MB。
一旦访问量稍增,系统开始频繁使用 Swap(虚拟内存),
响应速度急剧下降。
CPU 方面,1核意味着并发处理能力极弱。
若同时有3~5个用户请求动态页面,
PHP 进程排队等待,页面加载超过10秒。
哪些场景勉强可用?
在严格限制条件下,1核2G 可维持基本运行:
纯静态博客(如 WordPress + 缓存插件)
页面生成后几乎不调用 PHP,MySQL 几乎空闲。低频访问站点
日访问量 < 200 PV,且无复杂查询。个人测试环境
仅自己访问,用于学习或调试。
但只要涉及以下情况,立刻吃紧:
- 多人同时登录后台
- 上传图片触发缩略图生成
- 插件未优化(如未关闭自动更新、统计)
- 数据库表超过 1 万行且无索引
为什么 MySQL 是“内存杀手”?
MySQL 8.0 默认配置为通用场景设计,
但对小内存机器极不友好:
innodb_buffer_pool_size默认占大量内存- 后台线程(如日志、监控)持续运行
- 即使空载,也常驻 700MB+ 内存
相比之下,MariaDB 或 MySQL 5.7 在 1核2G 上表现略好,
但仍需手动调优。
如何优化以勉强运行?
若必须使用 1核2G,可尝试以下措施:
降低 MySQL 内存占用
修改/etc/mysql/my.cnf:innodb_buffer_pool_size = 128M key_buffer_size = 16M max_connections = 20限制 PHP-FPM 进程数
设置pm.max_children = 4,避免内存溢出。启用页面缓存
WordPress 用户安装 WP Super Cache 将动态页转为静态 HTML。关闭非必要服务
禁用 snapd、apport、rsyslog 等后台进程,释放 100MB+ 内存。增加 Swap 空间
创建 1~2GB Swap 文件,防止 OOM(内存溢出)崩溃。
即便如此,系统仍处于“高负载边缘”,
稳定性无法保证。
更合理的建议
最低推荐配置:2核2G
内存翻倍后,LNMP 可流畅运行 WordPress + WooCommerce 小站。预算有限时,优先保内存
宁可选 1核4G,也不要 2核2G(对 Web 服务而言,内存比 CPU 更关键)。考虑轻量替代方案
- 静态站:直接用 Nginx + Hugo,无需 PHP/MySQL
- 轻量 CMS:选择 SQLite 驱动的系统
搭建环境试验服务器,可以选2G内存或者更高的
阿里云:https://t.aliyun.com/U/EsjbOu
京东云:https://3.cn/2-i5UbPc
最后
1核2G 不是“不能跑 LNMP”,
而是“跑得非常吃力,且容错率极低”。
它适合临时测试,
但不适合任何真实业务。
技术选型不是越便宜越好,
而是在成本与体验之间找到平衡点。
如果你的网站已有访客,
哪怕只有几十人,
至少选择2核2G 起步。
否则,省下的几十元,
可能换来数小时的故障排查和用户流失。