能够在不清除缓存的情况下重新加载Magento站点配置中的更改



今天我处理了一项任务,将模块的配置加载到重负载下运行的Magento站点中。我复制了新模块的config.xml文件和所有内容来修复一些问题。

我们的Magento使用memcached缓存后端运行。

为了让一个模块运行,我必须完全清除缓存,这影响了网站的性能,我们有500名一致用户。所以我正在寻找如何在不清除缓存的情况下部署配置更改的解决方案。

有吗?

谢谢你的任何想法和想法。

Jaro。

这里有一个更新配置缓存而不是清除它的方法,从而避免竞争条件。

https://gist.github.com/2715268

您不必清除整个缓存来加载模块的配置。您可以使用Flush Magento Cache*选项安装模块。最终,您需要清除缓存以查看前端的更改(如果有)。要最大限度地减少对性能的影响,最好的办法是在非高峰或低使用时间清除它。

*已编辑-感谢Fiasco Labs

最好的做法可能是将系统置于维护模式,确保所有管理会话都已注销,检查每个人是否已注销,然后手动删除var/cache/mage--?文件夹。然后,您重新登录一个管理会话,让它运行,直到您看到管理会话已经启动,重新注销,然后返回到admin,开始检查网站上新安装模块的全部功能。

在安装模块或更改其配置时,总是必须刷新缓存。这对于强制重新读取配置、清空不兼容的操作码以及强制Magento重新读取您刚才所做更改的应用程序代码和模板是必要的。

是的,它会对你的网站性能产生短暂的影响,但如果你不这样做,可能会引发一些非常有趣的问题。

我曾经遇到过这样的情况,在Admin中使用按钮是不够的,对于模块安装,最好的做法可能是将系统置于维护模式,确保所有管理会话都已注销,检查每个人是否已注销,然后手动删除var/cache/mage--?文件夹。然后,您重新登录一个管理会话,让它运行,直到您看到管理会话已经启动,重新注销,然后返回到admin,开始检查网站上新安装模块的全部功能。

当然,对于简单的配置更改来说,只要刷新缓存就足够了,这就太过分了。

有关清除Magento 中缓存的更多信息

最新更新