前言
许多配置较低(如 1G 内存或更低)的云服务器,在安装宝塔面板后会频繁出现内存占满的情况。很多人误以为是宝塔面板本体占用太多内存,但实际上宝塔本身的系统内存占用并不高(Linux 上大致为 70MB 左右)。
在建好网站并安装宝塔面板后,可以通过对 PHP、MySQL、Nginx 等多个环节进行优化,开启缓存、配置会话存储、流量限制等操作,来减轻内存压力,提高服务器性能。以下是具体优化方案。
一、PHP 优化
- 调整 PHP 性能参数
调低 max_children(子进程数):虽然数值越大并发能力越强,但不能盲目设太高。作为参考,最大不要超过 5000。根据实际并发量和服务器内存调整。
- 安装脚本/内容缓存扩展
– 推荐使用 PHP 7.0 及以上版本。
– 脚本缓存可用 Opcache;内容缓存可选 Memcached 或 Redis。
– 两类缓存中:脚本缓存与内容缓存只需要安装一种脚本缓存;内容缓存可以同时装 Memcached 和 Redis。
– 如需要对图像处理性能有提升,可装 Imagick 或 ImageMagick。
- SESSION 存储优化
– 默认宝塔将 PHP Session 存在文件中,这种方式检索效率较低。建议将 Session 存储位置改为 Redis,以加快响应速度。
– 注意:Redis 扩展在宝塔中仅支持一个 PHP 版本。
– 设置方式:先在 Redis 设置窗口配置密码(requirepass),保存后复制密码;再在宝塔中对应 PHP 版本的“Session 设置”里输入该密码并保存。
二、系统与软件精简
- 卸载不必要的软件或服务:
如一个服务器中安装了多个 PHP 版本,但实际上只在用一个,就保留一个,卸载其余。类似地,关闭或删除未使用的服务可以减少资源占用。
三、定期清理与调度任务
- 添加计划任务:建议在宝塔面板中设置定期任务(例如每天凌晨)释放内存。包括释放 PHP、MySQL、Pure-FTPD、Apache/Nginx 的内存占用。这样可以在不影响正常访问的时间段进行维护。
四、防火墙与流量控制
- 启用流量控制方案或防火墙:
高并发访问或恶意访问会导致内存被迅速占满。通过防火墙或流量限制措施来屏蔽非正常流量、减少攻击和资源浪费。
五、Swap 增加(虚拟内存)
- 建议为低内存的云服务器添加 Swap:
- Swap推荐值
物理内存 Swap 512M 1024M 1GB 1500M 2GB 2048M 4GB 4096M 6GB+ 4096M
六、MySQL 优化
- 选择合适的优化方案:宝塔面板内置多个 MySQL 性能调优方案,根据自己的服务器配置选择最合适的一种即可。
- 关闭或调整查询缓存(query_cache):- 如果你已经使用了 Redis 或 Memcached 等缓存工具,并且表结构和 SQL 经过优化,那么可以把 query_cache_size 设置为 0 来禁用 query cache,以减少资源浪费。
- 调整 MySQL 内存相关参数:
– 包括 max_connections(最大连接数)、thread_cache_size、key_buffer_size、innodb_buffer_pool_size 等参数都应根据实际负载和内存大小来设定。连接数不要设得太高,避免空闲连接造成内存浪费。
– 在做完调整之后,重启 MySQL 服务来使配置生效。
七、Nginx 优化
- 开启 Gzip 压缩:
– 启用压缩可以显著提升访问速度。宝塔安装的 Nginx 默认开启 gzip,但压缩级别可以调整。
– 压缩等级 gzip_comp_level 建议设置为 5-6;但如果服务器配置较低(例如 1-2G 内存),推荐 3-5。太高的压缩比会带来 CPU 开销。
- 扩展 MIME 类型:
– 默认的 gzip_types 里 MIME 类型较少。为了让更多静态资源(如字体文件、SVG、JSON 等)也被压缩,应添加它们。
– 修改完后,重载配置并重启 Nginx。
Nginx原配置gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
修改为
gzip_types application/atom+xml application/javascript application/json application/rss+xml application/vnd.ms-fontobject application/x-font-ttf application/x-font-opentype application/x-font-truetype application/x-javascript application/x-web-app-manifest+json application/xhtml+xml application/xml font/eot font/opentype font/otf image/svg+xml image/x-icon image/vnd.microsoft.icon text/css text/plain text/javascript text/x-component;
声明:1、本站大部分资源均为网络采集所得,仅供用来学习研究,请于下载后的24h内自行删除,正式商用请购买正版。2、如若本站内容侵犯了原著者的合法权益,请携带相关版权文件联系我们进行下架或删除。3、虚拟下载类资源具有可复制性,一经下载后本站有权拒绝退款或更换其他商品!
评论0