мы используем кэш Appfabric в нашем проекте, и мы столкнулись с двумя основными проблемами.
Во-первых, мы используем именованные кэши (без явно созданных областей). Один из них, созданный как Expurable = false, Eviction = none, TTL = 525600, используется для объектов, которые должны быть всегда доступны (заполняется при запуске приложения с помощью метода Put). Но время от времени (я не мог определить точный промежуток времени или соединение с определенными действиями в приложении), весь объект в этом кеше внезапно истекает - я могу видеть это по счетчикам производительности - количество объектов для этого кеша становится равным 0, общее количество истекших счетчиков объектов увеличивается количества объектов в этом кеше одновременно. Я пропускаю некоторые другие настройки? Я пробовал как вставлять их через Put () без таймспа, так и пут с интервалом "год". Все еще истекает через несколько минут ...
Вторая проблема - когда я пытался решить первую проблему, я решил использовать функцию ведения журнала трассировки ETW, чтобы увидеть в журнале, что происходит. Я создал tracelog через logman и запустил его, дождался истечения срока действия кэша, остановил журнал и использовал tracerpt для создания файла дампа из etl. Пока все в порядке. Но этот дамп-файл бесполезен, потому что нет доступных для чтения данных, только 4400690073007400720 ....... После некоторых быстрых исследований я понял, что мне нужно предоставить файл PDB или TMF для трассировки, чтобы он мог "декодировать" двоичные события в удобочитаемые данные события. Можно ли получить некоторые из них для кэша appfabric? Или есть какой-то другой способ использования ETW с appfabric для получения полезного журнала?