Magento2 reindex 什么时候使用 UPDATE BY SCHEDULE 和 UPDATE on Save 以及区别是什么
在 Magento 2 中,有两种索引方法:
- UPDATE BY SCHEDULE 如期更新 (计划)
- 索引设置为在保存更改时更新,一旦在管理员中进行更改,索引数据就会更新。(例如,在管理中将产品添加到类别后,类别产品索引会重新索引。)这是默认设置。
- UPDATE on Save 保存时更新 (实时)
- 索引设置为根据 cron 作业按计划更新,数据根据 Magento cron 作业设置的计划编制索引,索引每分钟运行一次。
在小型商店中,保存时更新 很好并且只会增加很少的负载。
如果你有一个更大的商店,有多个管理员,在后端工作,那么你的索引可能会不断被触发。 保存更新会占用 MySQL,对于大型商店,可能需要数小时才能完成。为避免这种情况,建议将索引器设置为按计划更新。然后仅根据需要(通过命令)或通过计划的 cron 任务运行索引器。
cron 设置指南
PS. Production生产模式下
只有“产品价格”和“库存状态”应设置为“保存时更新”,所有其他必须手动设置。应将 cron 配置为在适当的非生产时间重新运行索引 文档
由于对 M2 的索引进行了改进,数据库死锁的风险和对前端客户体验的影响已大大降低。我安装了 5 家商店,目录包含大约 20K SKU,在 M1 中,索引有问题。自 2020 年 11 月推出 M2 商店以来,到目前为止,我们在 M2 索引方面没有遇到任何问题