Когда что-то похожее на продукт изменяется, записи в кэше, такие как «HTML-блок», становятся «недействительными», в результате чего их игнорируют и не используют в веб-интерфейсе. Это имеет смысл, потому что эти данные сейчас устарели.
Он остается «недействительным» до тех пор, пока не обновится вручную через область администратора.
После обновления вручную первый рендер кэшированного блока создаст его кэшированную копию и присоединять это к этому резервному кешу HTML. Последующая операция рендеринга этого блока сочтет этот кэш пригодным для использования и, наконец, будет использовать его до тех пор, пока кэш снова не станет «недействительным».
Почему этот процесс называется «обновить», так как он должен быть чем-то вроде «перезагрузки»? потому что «обновить» означает, что он генерирует обновленный моментальный снимок кэша, но вместо этого он просто позволяет создавать записи кэша.
Почему недействительные данные не обновляются после их аннулирования?
Это заставляет меня усомниться в моем заключении, был ли я прав?
почему этот процесс называется «обновить», как и «сброс»
Ваш общий взгляд на это верен — некоторые люди называют это «обновлением», потому что, хотя действие, которое вы предпринимаете, сбрасывает кеш, в работающей системе Magento кеш почти сразу же восстанавливает сам себя при следующей загрузке страницы (или другого пользователя) ,
Почему недействительные данные не обновляются после их аннулирования?
Когда кеш становится недействительным, это означает, что разработчик, работающий над любой недействительной функцией бэкэнда, кеш был достаточно умен, чтобы знать, что их действия требуют обновления кеша, но тот программный контроль кеша был недостаточен для обновления только их части измененного кеша.
Например, некоторые блоки могут отображать изменение цены продукта, что означает, что любые блоки с кэшированной ценой необходимо обновить. Тем не менее, как бэкэнд-программист, нет никакого способа узнать который блоки нуждаются в этом аннулировании, а также не знают, в какой системе кеша (кеш блоков, FPC, лак) они хранятся. Есть также вопрос производительности магазина — если вы редактируете 100 продуктов, хотите ли вы, чтобы Magento перестроил кеш 100 время в часы пик? Таким образом, вместо того, чтобы решить, как обрабатывать все это, разработчик помечает кэш как недействительный. Это позволяет кеш-системе выполнять любые действия, которые она считает необходимыми.
В идеальной теоретической системе кеширования будут запущены автоматизированные процессы, которые будут обнаруживать недействительный кеш и знать, что делать и когда его обновлять. Это сложная система для реализации и поддержки, поэтому вместо этого Magento решил просто уведомить владельцев магазина о недействительном кеше и позволить им предпринять любое действие, которое они сочтут целесообразным.
Обновление кэша Magento должно происходить, когда важные для пользователя данные изменяются по умолчанию. Например. данные заказа, информация о доставке и т. д.
Именно такое поведение я наблюдал за годы написания расширений для программного обеспечения. Вы можете вручную отключить это поведение, но, по умолчанию, динамические данные должны пробивать «дыры» в кэше.