近期公司有员工反馈使用ODOO15,出现切换菜单的时候,页面需要卡顿几秒才能进入菜单,现分享处理方案。
1.登录ODOO,右上角选择“我的配置”

2.将“通知”模式修改为“在ERP内处理”

3.修改完毕后,点击“保存”。

4.清理当前已经收到的信息提示。全部点击“标记”掉。

5.也可以由管理员进行操作,“设置”—-“用户和公司”—“用户”

6.“标记”历史信息后,所有有权限的公司主体都会清理掉。
常见问题(FAQ)
Odoo 切换菜单卡顿是什么原因?
常见原因:通知、待办、定时动作等实时查询过多;浏览器缓存未清理导致旧资源阻塞;服务器负载高或内存不足;以及前端 JS 未压缩合并。菜单切换时要加载大量实时数据就会明显变慢。
怎么解决 Odoo 菜单卡顿?
关闭不必要的通知与高频定时动作,清理浏览器缓存,启用资产 bundle 压缩(ot 资源合并),升级服务器配置(CPU/内存)。升级或装模块后务必刷新资源缓存。
Odoo 卡顿和数据库慢有关吗?
有关。慢查询、缺少索引、未清理的日志/消息表会拖慢整体响应,菜单切换只是最先暴露的症状。建议定期清理大表、为常用查询字段加索引、开启数据库慢查询日志定位瓶颈。
Odoo 缓存怎么清理?
可在后台”设置 → 技术 → 清除缓存”中操作,或直接重启 Odoo 服务;升级模块、修改视图/JS 后务必刷新资源(assets),否则前端仍加载旧文件导致卡顿或显示异常。
除了通知设置,还有这些根因
前面那招(把通知改「在 ERP 内处理」)对「通知刷屏导致卡」很灵,但菜单卡顿不全是通知的锅。我们实测还有几类常见根因:
1. 数据库慢查询、缺索引。切换菜单时 Odoo 要查 ir_ui_menu、res_users、ir_model_data 等,数据量一大就慢。定期清理 ir_attachment、mail_message、auditlog 这类大表;给常用查询字段加索引;打开 PostgreSQL 慢查询日志(log_min_duration_statement = 1000)定位长 SQL。
2. 前端资产没合并。开发者/debug 模式下 Odoo 不合并 JS/CSS,每次切菜单重载几十个文件。生产环境务必关 debug,并到「设置 → 技术 → 清除缓存 / 重新生成资产(Regenerate Assets)」。升级或装模块后这一步必须做,否则前端还在加载旧文件。
3. workers 不够,请求排队。多用户并发时 worker 数不足,菜单点击要等前面排完。在 odoo.conf 里按 workers = CPU核心数*2 + 1 调整,重启 odoo 服务。
4. 服务器本身资源吃紧。htop 看 CPU/内存,Odoo 是吃内存的主,8G 以下跑多人很容易卡;临时加 swap 顶一下,长期还是加配置。
5. 反向代理没优化。nginx 没开 gzip、静态资源没缓存、SSL 在 Odoo 端做(应该放 nginx 卸载)都会拖慢。
| 根因 | 排查 | 解决 |
|---|---|---|
| DB 慢/缺索引 | PG 慢查询日志 | 清大表、加索引 |
| 资产未合并 | 是否 debug 模式 | 清缓存+重生成资产 |
| workers 不足 | odoo.conf | 调大 workers 重启 |
| 资源吃紧 | htop | 加内存/swap |
浏览器侧也别忽略:硬刷新 Ctrl+F5 清掉旧缓存,或清站点数据重新登录。
延伸答疑
按上面都清了还是卡?
八成是数据库层面。开 PG 慢查询日志看切换菜单时跑的 SQL,针对大表(mail_message、ir_attachment)清理或加索引。
升级模块/装模块后突然卡?
资产没刷新。后台「技术 → 清除缓存」并「重新生成资产」,再硬刷新浏览器。
Odoo 和数据库分开部署会更流畅吗?
会。PostgreSQL 单独放一台机器、Odoo 多 worker,再前置 nginx 做 SSL 卸载和静态缓存,是标准的高负载架构。
workers 设多少合适?
经验公式 CPU核数*2+1,再按内存算(每 worker 约 200-300M)。8 核 16G 大概 17 个 worker 是上限,多了反而争抢。