You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress服务器内存占用过高问题求助(含更新)

WordPress站点内存占用过高的解决思路(针对LiteSpeed共享主机+Cloudflare环境)

我来帮你梳理下这个问题的解决思路,结合你描述的情况,核心矛盾其实集中在dovecot/imap邮件进程和WordPress的admin-ajax.php请求上,咱们一步步来拆解:

一、先解决邮件服务(dovecot/imap)的内存占用问题

首先纠正你之前的误解:收件箱里的邮件本身不会占用服务器内存,但dovecot/imap是处理邮件客户端(比如Thunderbird)连接的服务进程,如果你的邮件同步设置不合理,会导致这些进程长期驻留并消耗大量内存——尤其是你有15个邮箱账户同时在Thunderbird上同步,叠加起来的负载很可观。

具体调整步骤:

  • 优化Thunderbird的同步设置:
    • 打开每个邮箱账户的「设置」→「同步与存储」,把离线同步范围改成「仅最近30天的邮件」,不要同步全部历史邮件;
    • 取消勾选同步垃圾邮件、已删除邮件、归档等非必要文件夹;
    • 把自动同步间隔从默认的15分钟延长到30分钟以上,或者改成手动同步(如果不需要实时接收邮件);
    • 关闭「保持连接」选项,避免长期占用IMAP连接导致进程无法释放内存。
  • 清理服务器端邮箱数据:
    • 登录cPanel的「邮件账户」,查看每个邮箱的占用空间,如果有超大邮箱(比如超过10GB),建议把旧邮件归档到本地电脑,然后删除服务器上的归档邮件,减少dovecot同步时的资源消耗;
    • 开启邮箱配额警告,避免邮箱爆满触发服务异常。
  • 临时验证测试:
    • 完全关闭Thunderbird,观察服务器内存占用是否明显下降。如果是,说明问题确实出在邮件客户端的连接设置上,针对性调整即可。

二、优化WordPress的admin-ajax.php内存占用

你用了Heartbeat Control但没效果,可能是配置不到位,或者还有其他插件/主题在发起请求:

具体优化:

  • 重新配置Heartbeat Control:
    • 不仅要限制后台的Heartbeat调用,还要彻底禁用前台的Heartbeat(如果不需要评论预览、实时编辑这类功能);
    • 把Heartbeat的调用间隔设置为最大值(比如60秒),降低请求频率。
  • 拦截非必要的admin-ajax.php请求:
    • 用浏览器开发者工具(F12)查看前台页面的网络请求,过滤出admin-ajax.php,找出是哪个插件/主题发起的(比如某些主题的动态加载、统计插件);
    • 如果是主题或插件的非必要请求,可以直接禁用相关功能,或者换成静态加载方式;
    • 添加以下代码到主题的functions.php(先备份文件!),禁止未登录用户调用admin-ajax.php:
      add_action( 'init', 'disable_guest_admin_ajax' );
      function disable_guest_admin_ajax() {
          if ( ! is_user_logged_in() && isset( $_REQUEST['action'] ) ) {
              wp_die( 'Unauthorized', 403 );
          }
      }
      
  • 优化WP Fastest Cache设置:
    • 开启「浏览器缓存」「Gzip压缩」「静态资源合并」,减少页面请求数;
    • 禁用「缓存登录用户」选项,避免登录时触发不必要的缓存重建;
    • 针对Google Fonts请求多的问题,用插件的「Google Fonts优化」功能,把字体下载到本地托管,减少外部请求的同时降低关联的admin-ajax.php负载。

三、服务器层面的排查与调整

  • 查看进程详情:
    • 登录cPanel终端,执行top或htop命令(如果主机允许),查看具体进程的内存占用,确认dovecot/imap和admin-ajax.php的PID及占用比例;
    • 执行ps aux | grep dovecot,如果进程数量远多于你的邮箱账户数,说明存在未正常关闭的连接,需要调整超时设置。
  • 请求服务商调整dovecot配置:
    • 共享主机下你无法修改dovecot的配置文件,可以联系服务商请求调整:
      • 缩短IMAP连接的超时时间(比如设置为10分钟);
      • 限制imap进程的最大数量;
      • 启用进程复用机制,减少内存开销。
  • 检查定时任务:
    • 除了Softaculous的每日备份,查看cPanel的「Cron作业」是否有其他隐藏任务(比如某些插件添加的定时同步),把备份时间调整到凌晨访客最少的时段,避免资源叠加占用。

四、极端情况的临时方案

如果以上方法都无法缓解,可以尝试:

  • 拆分邮箱账户:把15个邮箱分散到不同客户端,或用webmail代替Thunderbird,减少IMAP连接数量;
  • 更换缓存插件:换成LiteSpeed Cache(和你的LiteSpeed主机兼容性更好,针对admin-ajax.php有专门优化);
  • 升级到VPS/独立服务器:如果共享主机的资源限制过于严格,2GB内存仍无法满足需求,可能需要更高配置的环境。

内容的提问来源于stack exchange,提问作者user3257309

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:36:56