Я настраиваю Sitecore xDB и пытаюсь точно проверить, какая информация проходит через систему для аутентифицированных и неаутентифицированных пользователей. Я хотел бы иметь возможность вносить изменения и быстро видеть результаты в Sitecore. Я нашел настройку для уменьшения времени жизни сеанса до 1 минуты, а не до 20. Я не нашел способа просто заставить Sitecore синхронизироваться с Mongo по запросу или, по крайней мере, в течение 1-5 минут, а не около 20 минут. в данный момент. Существует ли она или «перестраивает» базу данных, объясненную здесь. процесс?
Есть ли способ заставить Sitecore синхронизировать данные MongoDB с базой данных SQL?
Ответы (1)
Эту и другую полезную информацию о сеансах xDB см. в этом сообщении в блоге Мартины Веландер: https://mhwelander.net/2016/08/24/whats-in-a-session-what-exactly-happens-вовремясеансаикак-знает-xdb-кто-ты/
Вам просто нужна служебная страница, которая вызывает System.Web.HttpContext.Current.Session.Abandon()
. Вы также можете перенаправить пользователя на несуществующую страницу.
Обновить, чтобы устранить комментарий
Насколько я понимаю, после истечения срока действия сеанса xDB обработка должна выполняться быстро. В файле Sitecore.Analytics.Processing.Services.config агент BackgroundService по умолчанию настроен на запуск с интервалом в 15 секунд.
Возможно, вы просто видите кешированные данные отчетов. Попробуйте очистить кэш на странице /sitecore/admin/cache.aspx. Вы также можете уменьшить параметр defaultCacheExpiration для cacheProvider отчетов в файле Sitecore.Analytics.Reporting.config. По умолчанию 10 минут.