Как инвалидировать тегированный кэш всех сайтов?

Есть двухасайтовая конфигурация. Причем s1 явялется публичкой, а s2 - внутренним сайтом компании. Соответственно сотрудники вносят изменения со стороны s2. Но тэгированный кэш установленный на s1 при этом не ивалидируется.

Т.е. допустим на стороне s1 в компоненте:
....
                global $CACHE_MANAGER;
                $CACHE_MANAGER->StartTagCache($cache_dir);
                $CACHE_MANAGER->RegisterTag("update_events");
                $CACHE_MANAGER->RegisterTag("update_courses");
                $CACHE_MANAGER->EndTagCache();
....


Где-то в перехватчике событий s2:
global $CACHE_MANAGER;
$CACHE_MANAGER->ClearByTag("update_events");


Кэш компонента s1 как был валидным, так им и остается. Какие есть решения, кроме самого очевидного - юзать агент на кроне который будет проверять изменения данных?
  • Вопрос задан
  • 107 просмотров
Пригласить эксперта
Ответы на вопрос 1
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
Закастомить метод ClearByTag bxapi.ru/src/?module_id=main&name=TaggedCache::cle...

Например сделать ClearByTagEx в котором убрать фильтр по SITE_ID:
5bbe1081410d8467116755.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы